1. 一个变量的引用相当于变量的别名
int x=10; int& ref=x;
2. 应用
- 如果一个函数接收一个变量的引用做参数,则函数可以修改变量的值;
- 引用传递给一个函数,可以避免对所引用的对象(大型)的拷贝(const Type& name);
- 在for循环中修改原来全部的对象;
- 在循环中避免对象的拷贝const+引用;
3. 引用和指针的相似点和区别:
(1)指针声明时,可以为空,引用必须有指向;
(2)指针可以多级寻址,引用只有单级寻址;
(3)引用一旦申明,必须初始化,不能空(不野,更安全),且之后不可以指向其他变量,不可以重置为空;
(4)一个对象中成员的引用使用.操作符,指针使用->操作符;
(5) 引用和指针都可以避免大量拷贝,都可以修改原变量的值,但指针更强大,构造函数的参数拷贝一般是引用,不用指针,操作符
重载也是使用引用;