第
一个函数返回
一个整数by-value,它是
一个r值.您一般不能分配到r值.第二个f()返回
一个整数的引用,它是
一个l值,所以你可以指定它.
int a = 4,b = 5;
int& f() {return a;}
...
f() = 6;
// a is 6 Now
注意:您不要为函数分配一个值,只需将其赋值给其返回值.
注意以下几点:
int& f() { int a = 4; return a; }
你返回一个临时的引用,这在函数返回后不再有效.访问引用将引用未定义的行为.