C++中的引用
引用就是取别名
1、引用的基本特性
引用就是取别名,声明一个标识符为引用,就表示该标识符是另一个对象的外号。
1、引用必须初始化,不存在空引用,但有悬空引用(变量死了,名还留着)。
2、可以引用无名对象和临时对象,但必须使用常引用。
3、引用不能更换目标
引用一旦完成了定义和初始化就和普通变量名一样了,它就代表了目标,一经引用终身不能再引用其它目标。
引用型参数
引用当作参数能达到指针同样的效果,但不具备指针的危险,还比指针方便。
引用可以实现简单函数间共享变量的目的,而且是否使用引用由被调函数说了算。
引用当作函数的参数还能提高传递参数效率,指针至少还需要4字节内存,而引用只需要增加一条标识符与内存之间的绑定(映射)。
有 const 修饰的数据引用时必须也加上const
引用型返回值
不要返回局部变量的引用,会造成悬空引用
如果返回值是一个临时值,如果非要使用引用接收的话,必须使用常引用。
注意:C++中的引用是一种取别名的机制,而C语言中的指针是一种数据类型(代表内存编号的无符号整数)