如果在函数中定义了字符串,它是否在调用之间保留其值?
像这样的东西:
std::string myFunction( std::string input)
{
std::string output;
for ( int i=0; i < input.length(); i++ )
{
output[i] = input[i];
}
return output;
}
如果第一次调用函数时输入字符串的长度比第二次调用时输入的长度长,那么第二次调用返回的字符串仍然有前一次调用的最后几个(与长度差异相同)字符完好无损的。