Bap*_*ton 4 c++ reference rules
我已经进入了关于参考文献的c ++研究阶段.它声明了以下规则:
将引用初始化为对象后,无法将其更改为引用另一个对象.
Iv写了一个简短的代码(正如练习中所要求的那样),旨在证明这个规则是正确的.
int y = 7;
int z = 8;
int&r = y;
r = z;
Run Code Online (Sandbox Code Playgroud)
有人可以解释为什么这个代码编译没有任何错误或警告?
r = z不会改变r"指向"的内容.它将值指定给z指向的对象r.
以下代码与您的代码完全相同,但使用指针而不是引用:
int y = 7;
int z = 8;
int* p = &y; // p points to y
*p = z; // assign value of z to the object pointed to by p (which is y)
Run Code Online (Sandbox Code Playgroud)