Core dump constructing a C++ string with NULL
Jonathan Wakely
jwakely.gcc@gmail.com
Fri Jan 14 17:05:00 GMT 2011
On 14 January 2011 16:59, Tom Browder wrote:
>
> Two questions:
>
> 1. does it take any significant time difference to check for a 0
> versus throw an exception (one argument against)?
You have to check for 0 to decide whether to throw an exception or not.
(The alternative is to not check, and segfault, which was the old
behaviour in libstdc++)
I couldn't care less about how slow the function is in the case of a
precondition violation (null string, the exceptional path). We do care
about the performance of the correct case (non-null string.)
> 2. Isn't a '\0' an empty string in the string context?
std::string("") is an empty string. std::string('\0') is not.
More information about the Gcc-help
mailing list