tôi đã làm việc trên một dự án nhỏ và đến một tình huống mà những điều sau đây xảy ra:Gán một nullptr cho chuỗi std :: an toàn?
std::string myString;
#GetValue() returns a char*
myString = myObject.GetValue();
Câu hỏi của tôi là nếu GetValue()
trả về NULL myString
trở thành một chuỗi rỗng? Nó không xác định? hoặc nó sẽ segfault?
Câu hỏi này khá giống: http://stackoverflow.com/questions/2407711/avoiding-improper-stdstring-initialization-with-null-const-char-using-g – chris
Microsoft luôn có lỗi khi chỉ định 0x0 để std :: string là OK. Bằng cách nhìn vào mã của bạn có vẻ như bạn là một anh chàng microsoft, vì vậy nó có thể làm việc cho bạn. Nhưng .. nếu không nó sẽ kích hoạt một SIGSEGV. –