1.引用更接近const指针,必须在创建的时候进行初始化,一旦与某个变量关联起来,就一直效忠于它。
例如:
int & rodents = rats;
实际上是以下代码的伪装
int const *pr = &rats;
其中,引用rodents扮演的角色与表达式*pr相同
2.可以通过初始化声明来设置引用,但不能通过赋值来设置。
例如:
int rats = 101;
int & rodents = rats;
另一个变量bunnies想通过赋值将rats变量的引用改为bunnies变量的引用
int bunnies = 50;
rodents = bunnies;
最后发现rats和rodents的地址相同,而该地址与bunnies的地址不同
3.左值引用与右值引用
左值指的是内存当中连续存储的数据, 右值指的是临时存储的结果
(1)左值引用
引用的形式如下:
数据类型 & 表达式;
int a = 10;
int &ia = a;//定义了左值引用变量
ia =2; 引用ia是变量a的别名,对ia的操作与对a的操作完全一样; (2)右值引用(C++11)
类型 && i = 被引用的对象;
本文深入探讨C++中引用的概念,包括常量指针与引用的区别、引用初始化与赋值的区别,以及左值引用与右值引用的具体含义和使用场景。
75万+

被折叠的 条评论
为什么被折叠?



