1.变量名
(1) 变量是一段实际连续存储空间的别名
(2)程序中通过变量来申请并命名存储空间
(3)通过变量的名字可以使用存储空间
在C++中新增加了引用的概念, 引用可以看作一个已定义变量的别名,引用的语法:Type& name = var;
2.引用的意义
(1)引用作为其它变量的别名而存在,因此在一些场合可以代替指针
(2)引用相对于指针来说具有更好的可读性和实用性
3.const引用
(1) 在C++中可以声明const引用
(2)const Type& name = var;
(3)const引用让变量拥有只读属性
当使用常量对const引用进行初始化时,C++编译器会为常量值分配空间,并将引用名作为这段空间的别名。
4.引用也有自己的存储空间
引用在C++中的内部实现是一个常指针
Type& name ->Type* const name
C++编译器在编译过程中使用常指针作为引用的内部实现,因此引用所占用的空间大小与指针相同。
从使用的角度,引用会让人误会其只是一个别名,没有自己的存储空间。这是C++为了实用性而做出的细节隐藏.
当函数返回值为引用时:
1.若返回栈变量
(1) 不能成为其它引用的初始值
(2)不能作为左值使用
2.若返回静态变量或全局变量
(1)可以成为其他引用的初始值
(2) 即可作为右值使用,也可作为左值使用
5.const 引用意义
当三目运算符的可能返回都是变量时,返回的是变量引用;
当三目运算符的可能返回中有常量时,返回的是值。
阅读(1384) | 评论(0) | 转发(0) |