C++中的引用、const引用和非const引用
关于引用
定义一个引用的时候必须要进行初始化,否则编译错误。
当引用初始化以后,只要改引用存在,它就绑定到初始化时指向的对象。不可能将引用绑定到另一个对象。
非const引用只能绑定到与该引用同类型的对象。const引用可以绑定到不同但相关类型的对象,还可以绑定到右值。
1//legal for const references only
2int i = 42;
3const int &r = 42; //对于非const引用不合法
4const int &r2 = r + i;
5
6double dval = 3.14;
7const int &ref = dval;
8
2int i = 42;
3const int &r = 42; //对于非const引用不合法
4const int &r2 = r + i;
5
6double dval = 3.14;
7const int &ref = dval;
8