我想知道是否除了使用for循环之外,在类构造函数中是否还可以使用null终止来填充char数组。使用for循环可以正常工作。但是我认为应该有一种更简单的方法...还是我错了?
String::String()
{
for (int i = 0; i < 80; i++)
stringNew[i] = '\0';
}
最佳答案
如果stringNew
是std::string
,则可以调用constructor:
//Initializes 'stringNew' with 80 times '\0'
String::String() : stringNew(80, '\0') {}
如果它是
char[]
,则可以调用 std::fill
:String::String()
{
std::fill(std::begin(stringNew), std::end(stringNew), '\0');
}
您也可以像示例中那样使用循环。