const 修饰的 z 不能修改,但可以通过 修改 y 修改 x ,z 。
类比于指针也有这个特性
// 权限的放大 |
| 236 | // p1可以修改 *p1不可以,const修饰是的*p1 |
| 237 | const int* p1 = &m; |
| 238 | // p1++; |
| 239 | // int* p2 = p1; |
| 240 | const int* p2 = p1; |
int x = 0, y = 1;
int& a = x + y;//错误
const int& a = x + y;//正确
x + y的值会存在零时变量里,而零时变量具有常性。