4.6 引用
引用就是某一变量(对象)的一个别名,对引用的操作与对变量直接操作完全一样,这很好理解,某人名叫郭靖,单位上的人都喊他“小郭”,说“小郭”怎么怎么样,实际上就是说郭靖怎么怎么样,“小郭”可以看成是郭靖的别名。在C++程序中,正确使用引用,可使程序简洁、高效。
4.6.1 引用的声明
换种角度思考,引用可以看成另一种指针,引用的声明方法和指针的声明方法类似,只要把*换作&,如下所示。
类型标识符&引用名=初始值;
声明语句中的初始值必须是一个变量或另一个引用。
注意
此处的&不是取地址符,而是“引用说明符”,这和*在指针声明中的情况类似。
举例如下。
int x=10; int&rx=x;
将引用rx声明为int型变量x的别名,在声明引用时,有以下4点需要特别注意。(1)一经声明,不能修改,C++不允许在声明完毕后修改引用的值。
(2)声明引用时,必须同时对其进行初始化。因为“一经声明,无法修改”,所以,引用的初始化是必需的,无初始化的引用是无效的。
(3)引用声明完毕后,相当于目标变量有两个名称,即原变量名和引用名,程序中不能再声明同样的引用作为其他变量名的别名。
(4)声明语句中的类型标识符必须于初始值的变量类型一致。