引用就是已定义变量的别名。
主要用途:作为函数的形参。 引用在定义时必须初始化,以后就和变量绑定了,不能改变其指向,类似于const指针。如:
int rat = 4;
int& rodent = rat; //定义时初始化
int bub = 10;
rodent = bub; //改变rodent ,其实是rat = bub,修改了rat的值,rodent依然指向rat
使用引用作为函数的参数时,如果函数调用的参数不是左值(即无变量名)或与相应的参数类型不匹配,C++将创建匿名临时变量,在不改变参数值的情况下,不会有太大影响。
返回类型为参数引用,返回的是实际上被引用变量的别名。
返回引用时避免返回临时变量,也应该避免返回指向临时变量的指针。要避免此问题,可以返回一个作为参数的引用,或者使用New来分配新的存储空间,但是要记得delete。
返回const,意味着不能使用返回的引用来直接修改它指向的变量,避免试图改变引用的指向而导致原数据被修改。