- 0
- 0
- 约1.07万字
- 约 55页
- 2018-03-27 发布于浙江
- 举报
[工学]3函数
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 函数的参数传递 ——用引用做形参 引用调用使在子函数中对形参所做的修改对主函数的实参有效 引用()是标识符的别名,例如: int i,j;int ri=i; //建立一个int型的引用ri,并将其 //初始化为变量i的一个别名j=10;ri=j;//相当于 i=j; 声明一个引用时,必须同时对它进行初始化,使它指向一个已存在的对象。 一旦一个引用被初始化后,就不能改为指向其它对象。 2.函数间的参数传递 3 * 引用可以作为形参 void swap(int a, int b) {...} 当发生函数调用时,给形参分配内存空间,并用实参的值初始化形参。这样引用类型的形参就通过形实结合,成为实参的一个别名,对形参的操作也就直接作用于实参。 * 例3-12 输入两个整数交换后输出 #includeiostream using namespace std; void Swap(int a, int b); int main() { int x(5), y(10); coutx=x y=yendl; Swap(x,y); coutx=x y=yendl; return 0; } void Swap(int a, int b) { int t; t=a; a=b; b=t; } 运行结果: x=5 y=10 x=10 y=5 * t=a; x 5 t 5 x 的别名 a x y 5 10 y 的别名 x 的别名 a b y 的别名 x 的别名 a b x 10 y 10 a=b b=t; y 5 t 5 y 的地址 b x y 10 5 Swap(x,y); * 内联函数定义与使用 内联函数不是在调用时发生控制转移,而是在编译时将函数体嵌入在每个调用处。 内联函数的定义方法和格式: inline 函数值的类型 函数名(形参及其类型列表) { 函数体 } 作用:提高运行效率 3内联函数 3. 函数调用 * 内联函数定义与使用 声明时使用关键字 inline。 编译时在调用处用函数体进行替换,节省了参数传递、控制转移等开销。 注意: 内联函数体内不能有循环语句和switch语句。 内联函数的定义必须出现在内联函数第一次被调用之前。 对内联函数不能进行异常接口声明。(12章) 3内联函数 3. * 例3-14 内联函数应用举例 #includeiostream using namespace std; inline double CalArea(double radius) { return 3.14*radius*radius; } int main() { double r(3.0); double area; area=CalArea(r); coutareaendl; return 0; } 3内联函数 3. * 默认形参值的作用 函数在声明时可以预先给出默认的形参值,调用时如给出实参,则采用实参值,否则采用预先给出的默认形参值。 例如: int add(int x=5,int y=6) { return x+y; } void main(void) { add(10,20); //10+20 add(10); //10+6 add(); //5+6 } 4带默认形参值的函数 返回 3. * 默认形参值的说明次序 默认形参值必须从右向左顺序声明,并且在默认形参值的右面不能有非默认形参值的参数。因为调用时实参取代形参是从左向右的顺序。 例: int add(int x,int y=5,int z=6); //正确 int add(int x=1,int y=5,int z); //错误 int add(int x=1,int y,int z=6); //错误 4带默认形参值的函数 3. * 默认形参值与函数的调用位置 调用出现在函数体实现之前时,默认形参值必须在函数原形中给出;而当调用出现在函数体实现之后时,默认形参值需在函数实现时给出。 例: int add(int x=5,int y=6); void main(void) { add(); //调用在实现前 } int add(int x,int y) { return x+y;
您可能关注的文档
- [工学]2波函数和 Schrodinger方程.ppt
- [工学]2油藏流体的物理性质.ppt
- [工学]2测试概述.ppt
- [工学]2热二定律.ppt
- [工学]2测量系统特性.ppt
- [工学]2地球的物理性质_普通地质学.ppt
- [工学]2大地测量学.ppt
- [工学]2燃烧基本原理.ppt
- [工学]2电力市场概论.ppt
- [工学]2电磁学基本知识.ppt
- 取样光栅刻蚀深度空间分布微调:方法、应用与创新策略.docx
- 我国城市房屋拆迁行政补偿制度的困境与突破:基于法理与实践的双重视角.docx
- 餐饮业经营中的环境污染困境与破局之策:多维度解析与应对策略.docx
- 现金股利变动下资本市场的多维反应与影响机制探究.docx
- 福建省农业科技成果转化机制:困境与突破路径探究.docx
- 垂直管理视角下云南省交警总队公用经费保障体系构建与优化研究.docx
- 网络环境下企业财务风险的多维剖析与精准防控研究.docx
- 筑牢审前羁押人权防线:问题剖析与路径重塑.docx
- p53与AS共转染对HL60细胞生长抑制机制的深度解析.docx
- 上饶高铁经济试验区社区工作者招聘【16人】参考题库及答案1套.docx
最近下载
- 光伏电子产品的设计与制作-电子课件项目3-光伏草坪灯控制电路的设计与制作.pptx VIP
- 2024-2025学年江苏信息职业技术学院单招《数学》试卷含答案详解【考试直接用】.docx VIP
- 党员个人自评总结3篇-党员个人自评 党员个人自评小结 党员个人自评总结3篇.doc VIP
- 人教版英语新目标八年级下册第二单元教材词汇及重点搭配讲解.docx VIP
- 2026年演出经纪人《思想政治与法律基础》真题库及参考答案一套.docx VIP
- 索拉非尼治疗肝癌.pptx VIP
- 【高清可复制】HGT21629-2021 管架标准图_251-300.pdf VIP
- 新版人教版七年级下册地理全册教案(完整版)教学设计.docx
- 2025年北京事业单位真题.docx VIP
- 临时用地表(可编辑).pdf VIP
原创力文档

文档评论(0)