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