|
发表于 2002-12-31 02:04:13
|
显示全部楼层
const int a=1;
const int *const &b=&a;
我就想不通第三个const的作用,没有呢还就是不对
const int *const &b=&a;
这里应改为const int *const b=&a;
第一个const是说不允许修改b指向的值,第二个const是说不允许修改b指向的地址,和起来就表示而你把const定义的常量a的地址赋给b的话,就不能让b可以修改a,而要做到不能修改a的话,就不能把b定义为变量指针,要是定义成const int *b=&a;那么b指向的值是不变的,定义成int * const b=&a;是说b指向的地址不变.
所以说要想让b指向常量a且不能修改a就必须定义成const int * const b=&a; |
|