I think that std::string can only be constructed with a valid non-zero (including terminator) length char *. You could do this: char const *val = whatever; std::string s( val ? val : ""); Brian On Thu, Jan 13, 2011 at 11:56 AM, Tom Browder <tom.browder@xxxxxxxxx> wrote: > It would be nice if this would construct an empty string: > > #include <string> > std::string s(0); > > At the moment that gives a core dump. > > Is that defined behavior according to the standard? If not, what > about a g++ enhancement? > > Thanks. > > Regards. > > -Tom > > Thomas M. Browder, Jr. > Niceville, Florida > USA >