1. 取地址运算符(Address-of Operator)
用于获取变量的内存地址

引用是别名的意思
引用(Reference)是某个变量的别名,它和原变量共享同一块内存地址。
2. 引用声明(Reference Declaration)
用于定义引用(别名),引用必须初始化且不能重新绑定到其他变量

3. 按引用传递(Pass by Reference)
在函数参数中传递实参的地址,修改形参的同时也会修改实参
作用
避免拷贝:如果传递的是大型对象(如结构体、类、容器),传值(Pass by Value)会触发拷贝构造函数,而传引用(Pass by Reference)不会。

如果传递的是 vector<int> 而不是 vector<int>&,整个 vector 会被复制一份,效率低下。
允许修改原始变量:函数内部对引用的修改会影响外部的变量。
如果不需要修改数据,可以加 const 防止意外修改。

4. 位与运算(Bitwise AND Operator)
对整数的二进制位进行按位与操作。(对应位置同时为1才为1)

5. 逻辑与的替代写法(&& 的替代)
在部分场景(如宏定义)中可能见到,但标准逻辑与应使用 &&
6. 函数返回引用(Return by Reference)
函数可以返回引用,通常用于链式操作或返回类成员

注意事项
1.不要返回局部变量的引用
局部变量在函数结束后销毁,返回其引用会导致悬空引用(Dangling Reference),引发未定义行为。

2.可以返回静态变量、成员变量或全局变量
这些变量的生命周期足够长,返回其引用是安全的。
C++中&符号的多种作用
246

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



