今天看C++ Primer,里面提到给函数返回值赋值,还真是不知道这种用法,肯定是以前上课没听讲,科科
例子如下:
char &get_val(string &str, string::size_type ix)
{
return str[ix];
}
int main()
{
string s("a value");
cout<<s<<endl;//prints a value
get_val(s,0) = 'A';//changes s[0] to A
cout<<s<<endl;//prints A value
return 0;
}
输出
a value
A value
如果不希望str被改变,应该将其声明为const