当前位置: 首页 > news >正文

初识C++(三)

概述:本篇主要讲述“引用“ 分别就引用的概念、引用特性、引用的应用场景、以及常引用展开描述。后续会补充引用的底层原理,敬请期待。

目录

 什么是引用?

引用的三个特性

引用的应用

引用做参数

引用做返回值

常引用

总结


 什么是引用?

引用不是新定义一个变量,而是给已存在变量取了一个别名,编译器不会为引用变量开辟内存空间,它和它引用的变量共用同一块内存空间

在语法层 我们认为没有开辟新的空间,而是给原来的取了一个新名称b

引用的三个特性

1.引用在定义的时候需要进行初始化

 2.一个变量可以有多个引用

 3.引用一个实体后不能再引用另外一个实体(不然就是赋值而非引用)

引用的应用

引用做参数

1.swap应用(简单用例) 

 2.修改链表(不需要传二级指针)

3.输出型参数

引用做返回值

1.首先让我们来回顾一下传值返回

 2.传引用返回(会出一篇博客专门详细讲解过程)

比如 可能出现空间被占用的情况 那么此时就是随机值了

 

 3.什么情况能用传引用返回

常引用

权限放大

权限不变

权限缩小

 

总结

引用的作用主要体现在传参和传返回值

1.引用在传参和传返回值 有些场景下面 可以提高性能(大对象 + 深拷贝对象(后面补充))
2.引用在传参和传返回值 ,输出型参数和输出型返回值。通俗点说,有些场景下面,形参的改变可以改变实参。有些场景下面,引用返回 可以改变返回对象(后面补充)。

相关文章:

  • C++ 【多态】
  • Codeforces 1750A. Indirect Sort
  • 7.10 操作系统的启动
  • 项目计划要趁早
  • 【阅读笔记】理解表驱动设计
  • [C语言、C++]数据结构作业:用递归实现走迷宫(打印正确通路即可)
  • JVM垃圾回收系列之垃圾收集器二
  • 2023年,前端开发未来可期
  • mysql 常用查询优化策略详解
  • 区块链的认识
  • Kubernetes中的yaml文件
  • Python编程挑战赛
  • Windows下安装RabbitMQ的步骤
  • 欢迎女神科学家颜宁回国,并祝她如愿以偿
  • 学习笔记-IPC$(Internet Process Connection)
  • 第三站:函数(第二幕)
  • 信贷审批中拒绝原因码的分布与监控设计
  • Mybatis之foreach
  • 【JavaEE基础与高级 第60章】Java中的反射获取成员方法Method、获取成员变量Field(下篇)
  • 2023秋招感悟
  • 辽宁男篮被横扫这一晚,中国篮球的一个时代落幕了
  • 取消了“仅退款”,商家就可以高枕无忧了吗?
  • 应急管理部派出工作组赴山西太原小区爆炸现场指导救援处置
  • 神十九乘组安全顺利出舱
  • 交行一季度净利253.72亿元增1.54%,不良率微降
  • 长三角议事厅·周报|长三角游戏出海,关键在“生态输出”