| |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| -> C++知识库 -> C++中的引用到底是什么??? -> 正文阅读 |
|
|
[C++知识库]C++中的引用到底是什么??? |
|
首先看这样一段代码:
这段代码看上去其实是很简单的,关键就在于代码中的“&”符号这是什么意思你?这个就是C++中的引用,代码中的“ra”可不是新定义的一个变量,而是给变量“a”取了一个别名,就相当于生活中所取的外号,“a”和“ra”其实指向的是一块共同的空间,依次就得到了引用的定义。 引用:不是新定义的变量,而是给已有的变量取了一个别名,编译器不会为它开辟一块新的空间,而是两者共用一块空间。 知道了引用的定义,那么引用的作用是什么呢? (1)可以使代码书写更加简化。 (2)引用类型作为函数的形参,引用基本上可以取代C语言中的一级指针。 (3)引用类型作为函数的返回值。 知道了引用的作用那我们该如何使用引用呢?首先演示引用如何取代指针的,下方代码为两个数字的交换:
代码结果如下:
?通过观察上述结果我们可以得到引用基本上可以取代指针,那么我们来探索一下指针和引用有什么区别: (1)首先从底层来看,引用就是按照指针的方式处理的:
? ?通过查看汇编代码可以看出在底层实现方式是一样的,那么可以得到从底层来看引用在底层就是按照指针的方式来处理的。 (2)以引用的方式作为函数的返回值时,一定不能返回函数栈上的空间,因为函数结束后,函数体内部的局部变量被销毁了,如果在外部以引用的方式来接受函数的返回值,外部的引用实际引用了一块非法的空间。 |
|
|
| C++知识库 最新文章 |
| 【C++】友元、嵌套类、异常、RTTI、类型转换 |
| 通讯录的思路与实现(C语言) |
| C++PrimerPlus 第七章 函数-C++的编程模块( |
| Problem C: 算法9-9~9-12:平衡二叉树的基本 |
| MSVC C++ UTF-8编程 |
| C++进阶 多态原理 |
| 简单string类c++实现 |
| 我的年度总结 |
| 【C语言】以深厚地基筑伟岸高楼-基础篇(六 |
| c语言常见错误合集 |
|
|
| 上一篇文章 下一篇文章 查看所有文章 |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| 360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年12日历 | -2025/12/14 12:37:55- |
|
| 网站联系: qq:121756557 email:121756557@qq.com IT数码 |