Ken*_*nta 3 c++ const reference
第一::
double & val = 66.6; //illegal
const double & val = 66.6; //legal
Run Code Online (Sandbox Code Playgroud)
我只是做了一些演示程序,并通过上述概念,但无法确定上述概念的确切需求.在第二种情况下,const究竟在做什么?
第二个::
int nVar = 12;
int &rVar = nVar ;//Ok
double &dVar = nVar ;//Error
const double &cdVar = nVar ;//Ok
Run Code Online (Sandbox Code Playgroud)
为什么第3个语句在第4个语句工作的地方不起作用?
第一种是非法的.您不能将非const引用绑定到临时.
第二是合法的.它创建一个临时的double,初始化为66.6,并对它val进行const引用.
该const承诺不通过参考更改值.C++不允许您将非const引用绑定到临时引用,因为这通常是一个错误.