const引用问题:为什么const int ival=1024;const int *&pi_ref=&ival; 这样才正确?
EXAMPLE:我们希望用一个const对象地址来初始化一个引用。非const引用定义是非法的。如:(一旦引用已经定义,它就不能再指向其他对象)
Const int ival=1024;
Int *&pi_ref=&ival; //error
我们修改为:
const int ival=1024;
const int*&pi_ref=&ival;
然而,我们引用不是指向一个常量,而是指向一个非常量指针,指针指向一个const对象。正确的如下:
const int ival=1024;
const int *const &pi_ref=&ival;
上面是C++PRIMER中的大概意思,
但我还不是很明白为什么
Const int ival=1024;
const int *&pi_ref=&ival;
这样还是错的?
各位大哥解答一下好吗?》