| |
|
开发:
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++引用变量之结构(一) |
引用是已经定义的变量的别名,改变别名其实也是改变变量的本身; 下面看看最基本的引用将会用到哪里——交换变量
实际代码如下
1.创建引用变量c和c++使用&作为取地址符来指示变量的地址。在c++中它还有另外一个含义,将其用来声明引用,如上述解释。 例如:将rodents作为变量rats的别名,可以
在这里&不是取地址符而是类型标识符的一部分。就像声明中的char *指的是指向char的指针一样。int &指的是指向int 的引用。上述引用声明的变量他们都指向相同的值和内存单元。 2.例子(包括引用变量作为函数参数和创建引用变量)
介绍一下程序?这个程序首先初始化了多个结构对象。如果指定的初始值较少,余下的成员将会被设置为0 在上述代码中我们就需要注意const用法和引用变量作为函数参数和结构体定义的问题了
3.介绍左值左值参数是可被引用的数据对象,例如,变量,数组元素,结构成员,引用和解除引用的指针都是左值。非左值包括字面常量(用括号括起来的字符串除外,他们由地址表示)和包含多项的表达式。在c语言中,左值最初指的是可出现在赋值语句左边的实体,但这是引入关键字const之前的情况。现在常规变量和const变量都可以视为左值,因为可以通过地址访问他们。但常规变量属于可修改的左值,而const属于不可修改的变量。 应该尽可能的使用const
更深入的了解返回应用和传统返回机制的不同传统返回机制与按值传递函数参数类似:计算关键字return后面的表达式,并将结果返回给调用函数。从概念上说,这个值被复制到一个临时位置,而调用程序将使用这个值
在第一条语句,值4.0被复制到一个临时变量,然后被复制给m。在第二条语句中,值5.0被复制到一个临时位置,然后传递给cout 接下来我们看一行代码
如果accumulate返回给一个结构,而不是指向结构引用,将把整个结构复制到一个临时变量,再将这个拷贝给dup。但在返回值为引用时,将直接把team复制到dup,效率更高 返回引用的函数实际上是被引用的变量的别名 返回时要注意的一点是,应避免返回函数终止时不再存在的内存单元引用。应避免写下面的代码
该函数返回的是一个指向临时变量的引用,函数运行完之后它将不复存在。 为了避免这样的问题,最简单的方法就是,返回一个作为参数传递给函数的引用。作为参数的引用将指向调用函数使用的数据,因此返回的引用也将指向这些数据。 |
|
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图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 12:51:20- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |