最近打算找个实习 ,看些笔试题啥的,看到了一个关于 引用和常引用的。引用不用说 就是个别名。
举个例子:
int i;
int &ref =i;
i=10;
cout<<ref<<endl;
ref=12;
cout<<i<<endl;
int j=1;
const int ref2=j;
j=3;
cout<<j<<endl;
cout<<ref2<<endl;
不论 i 有没有初始化 定义i的引用都行 但是如果 j 没有 初始化 那个ref2 就会创建失败 ,j 初始化为 1 后 ref2 的值就是 1 后面再改变 j 的值 ref2 确不变 这个 和引用的概念差了 好多。
我觉得真要 实现 真正的常引用 那就 是定义一个 const 然后再 定义对这个 常量的引用 这样才是 常引用 初始化以后 都不能改变。
int a;
constint&ra = a;
ra = 1; // 错误
a = 1; // 正确
上面网上的这一段 是错的 定义ra 时 a 必须是初始化过了才行。
欢迎指出 错误之处。。