在C++入门中,我发现const int &可以用int对象绑定.我不明白,因为我认为const int &应该绑定一个const int不是一个int对象,int对象可以改变,本书解释了这个问题,当const int &对象绑定时int; 两者之间有一个临时对象,例如:
int a=0;
const int &r=a;
Run Code Online (Sandbox Code Playgroud)
我们可以使用b临时值,所以上面等于:
const int b=a;
const int &r=b;
Run Code Online (Sandbox Code Playgroud)
但是我认为这本书不对,因为如果有一个临时的b存在之间,a并且r,价值r无法改变,但是当我在visual studio中调试以下编码时,我发现它不对:
int a=0;
const int &r=a;
a=3;
cout<<r<<endl;
Run Code Online (Sandbox Code Playgroud)
输出是可以改变r=3;的值r,为什么?我不明白.