为什么让非常量引用指向一个常量对象没有报错?
为什么让非常量引用指向一个常量对象没有报错?还有int &r4 = r2 * 2;//非常量引用的初始值必须是左值 这里我明白是为了不让通过非常量修改常量的值
可是这里这里 r1 = r2;//非常量引用绑定到常量上 , 然后我通过r1修改了常量r2的值。
程序代码:#include <iostream>
#include <stdio.h>
using namespace std ;
int main( )
{
int a1 ; const int a2=1 ;
a1 = a2 ;//常量赋值给非常量
//a2 = a1;//常量不可以修改
int &r1 = a1;
const int &r2 = a1;//常量引用可以绑定到非常量上
r1 = r2;//非常量引用绑定到常量上
r1 = 88;
cout << r2;
// int &r4 = r2 * 2;//非常量引用的初始值必须是左值
return 0;
}



