int n = 0;
int & f(int m)
{
n += m;
cout << n <<endl;
return n;
}
int main(void)
{
int a = f(10) + 20;
f(10) = a;//结果:30 虽然f函数也用了2次但是这种写法相当于 n = 30;
f(10) = f(10) + 20;//结果:40 等价于n = n+20, 因为f函数使用了两次,第二次改变了n的值 所以结果是40
f(10) += 20;//结果:30 等价于n = 10 + 20;+=符号f函数只使用了一次+=相当于 n = f(10)的值 +20所以结果是30
return 0;
}