目录
一、引用:
1、定义:
✨✨引⽤不是新定义⼀个变量,⽽是给已存在变量取了⼀个别名,编译器不会为引⽤变量开辟内存空间,它和它引⽤的变量共⽤同⼀块内存空间。⽐如:⽔壶传中李逵,宋江叫"铁⽜",江湖上⼈称"⿊旋⻛";林冲,外号豹⼦头✨对其修改是直接操作的,别名和本名就是指的一个对象✨✨
👉👉 类型& 引⽤别名 = 引⽤对象
✨✨引用的出现代替了指针,对引用进行修改,就相当于对本名(引用对象)进行修改
2、特性:
//在定义时要初始化
//一个变量可以有多个引用
//引用一旦引用一个实体,再不能引用其他实体
//引用不能指向一个空对象,没有意义
//int& a = nullptr;//.引用必须初始化,所以不能为空引用,指针可以
✨✨初始化,决定了别名,该别名就一直是a的别名,不会发生更改
✨✨一个变量可以有多个别名,就像别人给你起外号有多个一样(随便起外号不是很礼貌哈)
✨✨已经有了实体了,不会引用其他的实体,这里只会将h的值赋值给b,直接就将a的值也改变
3、引用的使用:
1. 引⽤在实践中主要是于引⽤传参和引⽤做返回值中减少拷⻉提⾼效率和改变引⽤对象时同时改变被引⽤对象。
2.引⽤传参跟指针传参功能是类似的,引⽤传参相对更⽅便⼀些。
3. 引⽤和指针在实践中相辅相成,功能有重叠性,但是各有特点,互相不可替代。C++的引⽤跟其语⾔的引⽤(如Java)是有很⼤的区别的,除了⽤法,最⼤的点,