const double*& 初始化问题


首先

double mean[4]]={0.};
const double *& haha = mean;//error

这种情况是非法的.原因是,这里的const限定的是double,也就是这是一个 “指向const double 的指针变量的引用“,所以,即使这个指针可以被改变,但是指向的值不能被改变。至于赋值,就只能老老实实赋给它一个const double * 型的变量,只有这样才能体现这个变量是指针且其指向的值不可变(但是地址本身可以变)。
其他的解决办法如下:

double mean[4]]={0.};
double *const & haha = mean;//ok


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM