已阅读5页,还剩15页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第七章引用 C 语言程序设计教程 本章主要内容 引用的概念各种数据类型的引用引用做函数参数引用函数返回值常引用引用的应用举例 引用是对其他变量的引用 为其他变量起一个别名 可简化很多语法 并使原来一些难以实现的问题得到解决 7 1应用的概念 C 的引用是一种赋值 发送和返回复杂数据结构的方法 应用这种方法 系统不需要负担额外的开销 节省了内存空间 引用建立时与某个变量绑定 必须先有变量存在 建立引用的格式 类型声明rd是对double型数的引用 初始化为引用d 引用特点 可以引用任何合法变量名 引用不是变量 必须初始化 引用是值 不占存储空间 声明引用时 目标的存储状态不会改变 所以 引用只有声明 没有定义 引用仅在声明时带有 以后就像普通变量一样使用 不需再带 引用最好用做函数参数 例 分析以下程序 includevoidmain intn 100 int 7 2各种数据类型的引用 指针也是变量 可有指针变量的引用 例 一指针引用 includeVoidmain int pn int 输出n值 cout 并不是对任何类型的数据都可以引用 不能使用引用的情况 不允许对void进行引用 因void本质上不是类型 例 void 一引用类型的限制 7 3引用作函数参数 传递引用给函数与传递指针的效果一样 引用形参是对应实参的别名 声明按引用传递函数参数 只需在函数声明或定义中参数类型的后面加上符号 即可 其他语法与按值调用的一样 引用具有指针的威力 在调用引用传递的函数时 可读性比指针传递好 引用具有传值方式函数调用语法的简单性与可读性 避免了复制大量数据的开销 使用引用可返回多个值 引用作为函数参数 1 使用普通变量的引用来传递参数 2 另一种是使用对象引用作为函数参数 一引用传递参数 例 includeVoidf inta intn int 二对象引用作函数参数 使用对象引用作为函数参数具有用对象指针作为函数参数的优点 而用对象引用作函数参数更简单 更直接 例 分析以下程序 includeClasssample intx y Public sample x y 0 sample intx1 inty1 x x1 y y1 voidcopy sample voidfun samples1 sample 7 4引用函数返回值 引用表达式是一个左值表达式 因此它可以出现在形参数和实参数的任何一方 如果一个函数返回了引用 则该函数的调用也可以被赋值 引用返回值时 不生成值的副本 includeintn 0 int 注 引用返回值只用在需要对函数的返回值重新赋值的时候 在类中也可以引用成员函数的返回值 includeClasssample intn public sample sample intm n m int voidmain samples 10 s s disp 输出结果 n 10 7 5常引用 使用const修饰符可以声明引用 被声明的引用为常引用 不能通过常引用更新对象的值 定义格式 const类型 n是m的引用 可更新m值 但不能通过n更新m的值 常引用用作函数的形参 这样该函数中不能更新该参数所引用的对象 可保护实参不被修改 例1 includeIntadd constint 输出结果 10 20 30 例2 include intn public sample inti n I intgetn const 常成员函数 returnn Intadd constsample voidmain samples1 100 s2 200 cout s1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年矿井考试题库及答案
- 烤烟打包服务协议书
- 烧烤店招聘合同范本
- 热敏纸购销合同范本
- 焊接加工协议书范本
- 煤场装卸协议书范本
- 煤炭供应保证协议书
- 煤炭运杂费合同范本
- 煤矿培训委托协议书
- 煤矿采煤工程协议书
- 药剂证书考试题库及答案
- 前庭大腺囊肿课件
- 雨课堂学堂云在线《医患沟通与调适(广州医大 )》单元测试考核答案
- 肿瘤科降低输液外渗发生率品管圈PDCA成果汇报
- 普通地质学教材
- 2022年湖北省药品监督管理局审评中心招聘笔试备考题库及答案解析
- 小区游泳池经营承包合同
- 离职手续委托书范本
- HY/T 0330-2022海滩养护与修复工程验收技术方法
- 医疗卫生事业单位结构化面试题打印
- 第11章-量子力学基础
评论
0/150
提交评论