版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、,8,第八章,引 用,8.1 引用的概念,第八章 目 录,8.3 用引用传递函数参数,8.2 引用的操作,8.4 返回多个值的函数调用,8.5 常引用,8.6 返回堆中变量的引用,第八章小结,函数参数可以通过传值和传址两种方式调用函数。还可以通过引用传递参数。 本章介绍引用的概念,用引用传递函数的方法,明确引用与指针的区别。,第八章 引用(Reference),在程序中,引用可作为目标变量或对象的别名而使用,对引用的操作实际上就是对目标变量或对象的操作。 建立引用的方法: int value; int / rvalue initialized 说明rvalue 是对整型数据的引用,并初始化为整
2、型变量value 的引用。,8.1 引用的概念,A reference is an alternative name for variable or object. To ensure that a reference is bound to a variable name or an object name, we must initialize the reference.,注 意 1、引用在说明时必须初始化,初始化变量必须是已定义的变量; 2、引用不是变量,只是替代某个变量的别名; 3、引用不占内存空间,引用的地址与绑定的变量相同。在程序中对引用的访问就是对其绑定的变量的访问。,#inc
3、lude void main( ) int intone; int ,运行结果为: intone=5 rint=5 intone=25 rint=25,例如:下面程序说明引用与其绑定的变量之间的关系。,注意: 引用运算符与取地址运算符使用了相同符号“ /输出变量count 的地址,如果程序中取引用的地址,它返回引用绑定的目标变量的地址; (2) 对引用赋值,就是对绑定的目标变量的赋值; (3) 若说明一个引用为T,8.2 引用的操作,(4) 可以说明对指针变量的引用,例如: int *a; int*,#include void main( ) int one; int,下面程序说明引用与其绑定
4、的变量间的赋值及地址间的关系。,cout“rone:”roneendl; cout“ ,输出结果: one:5 rone:5 ad+=*pd; cout“fn beint called, the value is:”*pdendl; return ,结果: fn being called, the value is:200.8 250.8 fn being called, the value is:30.0 280.8,对引用的初始化,可以是变量,可以是常量,也可以是一定类型的堆空间变量。 用堆空间变量初始化的引用,要求不使用该引用时要释放堆空间。,8.6 返回堆中变量的引用,#include
5、 int circlearea( ) double *pd=new double; if(!pd) coutrd; cout“The area of circle is ”rd*rd*3.14endl; delete pd; return 0; void main( ) if(circlearea( ) cout“Program failed.n”; else cout“Program succeed.n”; ,结果: The radius is: 12 The area of circle is: 452.16 Program succeed.,在C+中,使用引用比使用指针,使程序代码具有更好的可读性。 使用引用的目的主要是为了解决传值调用时(实参的复制),传递复杂对象效率低的问题。 引用通过传递实参地址
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国坐垫产业销售动态及消费趋势预测报告
- 2025-2030中国四氧化钛水溶液市场动态研究及发展态势展望报告
- 七年级数学教师总结7篇
- 商务黑金企业商务部门述职报告汇报模
- 口袋e店SaaS应用平台
- 企业生产安全培训课程
- 2025年广西壮族自治区河池市初二地理生物会考试题题库(答案+解析)
- 2026年广西壮族自治区玉林市中考化学考试真题带答案
- 2025年湖南娄底市八年级地生会考题库及答案
- 2025年广东省湛江市八年级地生会考真题试卷(含答案)
- 小学有限空间作业应急预案(3篇)
- 物流运输突发事件应急预案
- 叙事护理在住院患者健康教育中的应用
- 【数学 北京版】2025年高考招生统一考试高考真题数学试卷(真题+答案)
- 人员资格报审表模板
- T/CIMA 0070-2023交流电能表用隧道磁阻电流传感器
- 2025具身智能行业发展研究报告
- 河北省唐山市2025届高三下学期第二次模拟演练数学试卷(含答案)
- IPC-A-610F-2014 电子组件的可接受性
- 中外航海文化知到课后答案智慧树章节测试答案2025年春中国人民解放军海军大连舰艇学院
- 大学美育 课程标准
评论
0/150
提交评论