一个 const variable 可以拷贝值给一个 nonconst varible 来初始化,却不能让 nonconst variable reference 绑定:
const int ci = 1024;
int r1 = ci; // ok!
int $r2 = ci; // error!这样的关系看起来比较乱,其实不然。
因为 const variable 除了不能改变 value 外,操作和 nonconst variable 是一样的,所以可以拷贝 const value 给 nonconst variable;也因为 const variable 的值一旦确定就不能被改变,所以 non-const variable reference 不能绑定一个 const variable。
否则如果:
r2 = 2048;那么 ci 应该是多少呢?1024 还是 2048?
本文探讨了C++中const变量与非const变量之间的赋值及引用绑定规则。解释了为何const变量可以直接赋值给非const变量,而不能用于初始化非const引用。通过实例说明了这种设计的原因。
166

被折叠的 条评论
为什么被折叠?



