c语言中的引用

引用


引用就是某一变量(目标)的一个别名,对引用的操作与对变量直接操作完全一样。

引用的实际实现

int & rodents = rats;
//实际上是下面代码的伪装表示:
int * const pr = &rats;
//引用rodents与表达式*pr相同。

引用的声明方法:

类型标识符 &引用名=目标变量名
说明:
(1)&在此不是求地址运算,而是起标识作用。
(2)类型标识符是指目标变量的类型。
(3)声明引用时,必须同时对其进行初始化。
(4)引用声明完毕后,相当于目标变量名有两个名称,即该目标原名称和引用名,且不能再把该引用名作为其他变量名的别名。
(5)声明一个引用,不是新定义了一个变量,它只表示该引用名是目标变量名的一个别名,它本身不是一种数据类型,因此引用本身不占存储单元,系统也不给引用分配存储单元。故:对引用求地址,就是对目标变量求地址。&ra与&a相等。
(6)不能建立数组的引用。因为数组是一个由若干个元素所组成的集合,所以无法建立一个数组的别名。

总结

(1)在引用的使用中,单纯给某个变量取个别名是毫无意义的,引用的目的主要用于在函数参数传递中,解决大块数据或对象的传递效率和空间不如意的问题。

(2)用引用传递函数的参数,能保证参数传递中不产生副本,提高传递的效率,且通过const的使用,保证了引用传递的安全性。


来自

C语言中引用的用法
引用--变量的别名

posted @ 2019-04-04 22:35  litledogo  阅读(1521)  评论(0编辑  收藏  举报