如果字符串的定义如下所示
std::string name;
未初始化的字符串"name“的值是多少?它的大小是多少?
发布于 2013-07-19 13:04:50
默认构造的用户定义类型不是未初始化的。默认构造函数定义了一个大小/长度为零的空字符串(即""
)。
发布于 2013-07-19 14:04:50
value为null,size为0,但您可以通过empty()直接检查字符串是否为空
如果您想在您的应用程序中进行检查,请执行以下操作
std::string name // Construct an empty string
if(name.empty()) { // Check if its empty
name="something";
}
类似的更详细的讨论在这里initializing strings as null vs. empty string
https://stackoverflow.com/questions/17738439
复制相似问题