我的C++代码(如下所示)中,如果一个字符串被初始化为空字符串,会有什么影响吗?
vs.无/空初始化:
这里有什么问题吗?
std::string myStr = "";
....some code to optionally populate 'myStr'...
if (myStr != "") {
// do something
}
vs.无/空初始化:
std::string myStr;
....some code to optionally populate 'myStr'...
if (myStr != NULL) {
// do something
}
这里有什么问题吗?
NULL
(从概念上讲)是一个指针,应该只用作指针。std::string
不是一个指针,因此不应该将它们结合使用。另外,初始化是相同的:std::string
的构造函数将其设置为空字符串。 - MSalters