- 1、本文档共42页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C对C扩展功能
C++对C的扩展功能 朱晓旭 苏州大学计算机科学与技术学院 注释 C语言注释 /* */ C++注释 /* */ 注释一段 // 注释一行或一行的后半部分 更加灵活 良好注释可以增强程序可读性 注释是调试程序的常用手段 定义局部变量 C语言 规定局部变量必须定义在函数的第一个可执行语句之前 古板 C++ 只要保证在使用之前定义 按需定义,方便灵活 引用 引用是别名 int i,j; int ri=i; //建立一个int型的引用ri,并将其 //初始化为变量i的一个别名 j=10; ri=j;//相当于 i=j; 与取地址符类似 如何区分? 引用的类型和被引用类型应该相同 引用(续) 声明一个引用时,必须同时对它进行初始化,使它指向一个已存在的对象。 一旦一个引用被初始化后,就不能改为指向其它对象。 C语言函数参数的传递 按值传递:最多 按地址传递:靠数组和指针实现 C++添加了引用传递参数 例 输入两个整数交换后输出 #includeiostream.h 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; } Swap用传值方法编写 void Swap(int a, int b) { int t; t=a; a=b; b=t; } 运行结果(不能交换) x=5 y=10 x=5 y=10 Swap用传址方法编写 void Swap(int* a, int* b) { int t; t=*a; *a=*b; *b=t; } Main中调用语句需要修改为 Swap(x,y) 运行结果: x=5 y=10 x=10 y=5 Swap用传引用方法 void Swap(int a, int b) { int t; t=a; a=b; b=t; } 运行结果: x=5 y=10 x=10 y=5 引用(续) 引用作为形式参数的优点 书写简单 高效(节约存储) 可以从函数中带回值 函数需要返回多个值,可以使用 内联函数 声明时使用关键字 inline。 编译时在调用处用函数体进行替换,节省了参数传递、控制转移等开销。 注意: 内联函数体内不能有循环语句和switch语句。 内联函数的声明必须出现在内联函数第一次被调用之前。 是请求,不是命令 以空间换时间 内联函数例子 #includeiostream.h inline double CalArea(double radius) { return 3.14*radius*radius; } int main( ) { double r(3.0); double area; area=CalArea(r); coutareaendl; return 0; } 具有缺省参数值的函数 函数在声明时可以预先给出默认的形参值 调用时如给出实参,则采用实参值 否则采用预先给出的默认形参值 具有缺省参数值的函数(续1) 可以提供多个参数的,但必须靠右原则 否则导致二义性 例: 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) //错误 具有缺省参数值的函数(续2) 也可以通过函数声明的方式提供缺省参数值 缺省形参值的作用域 在相同的作用域内,缺省形参值的说明应保持唯一,但如果在不同的作用域内,允许说明不同的缺省形参。 例: int add(int x=1,int y=2); void main(void) { int add(int x=3,int y=4); add( ); //使用局部缺省形参值(实现3+4) } void fun(void) { ... add( ); //使用全局缺省形参值(实现1+2) } 重载 面向对象的重要特征之一 静态的多态 所谓重载就是同一个符号在不同的上下文中代表不同的含义。 分类 重载函数 重载运算符 方便使用,便于记忆 一个实际问题 C语言中求绝对值 int abs(int) double fabs(double) long labs(long) 函数的调用者负担大 能否三个函数具有相同名称? 重载函数 重载函数 功能相近的函数在相同的作用域内具有相同函数名 要求: 函数形式参数类型不同 int a
您可能关注的文档
- 95598叫中心2011年热点话务分析.doc
- 8人机系统安全分析与评价.ppt
- 9.项目人资源管理.ppt
- 95598户服务五项业务分类表(修改)2.doc
- 97学年度2学期中山女高辅导教师辅导知能研习活动.ppt
- 8项目时间理.ppt
- 9月7日至月13日云埔上下班交通车安排通知.doc
- 9、项目人资源管理.ppt
- 9年级第3元基础知识复习(用).ppt
- 9-环境监_第九章 监测过程的质量保证.ppt
- 云南省德宏傣族景颇族自治州盈江县2025年六年级下学期模拟数学试题含解析.doc
- 内蒙集宁二中2025届高三下学期第三次调考英语试题含解析.doc
- 2024年河南省濮阳市清丰县巩营乡招聘社区工作者真题及参考答案详解1套.docx
- 2024年河南省濮阳市清丰县巩营乡招聘社区工作者真题及答案详解1套.docx
- 2024-2025学年黑龙江省富锦第一中学高三第二学期阶段考试生物试题试卷含解析.doc
- 高熵高比重细晶钨合金的微观组织及力学性能研究.docx
- 四川电影电视学院《工程流体力学D》2023-2024学年第一学期期末试卷.doc
- 基于透射原理的缪子三维成像方法及应用研究.docx
- 广西全州县二中2024年高三最后一模英语试题含解析.doc
- 安徽省合肥市安徽师范大学附属中学2025年高三周考语文试题二含解析.doc
最近下载
- 学生公寓管理年终总结.pptx
- 信息学奥赛一本通·初赛真题解析 第1章:计算机基础知识.docx VIP
- 2023《浅析徐福记食品公司的财务状况》.docx VIP
- 中级java工程师面试题及答案.doc VIP
- java中级工程师面试题及答案.doc VIP
- 冰雪旅游服务规范 .pdf VIP
- DB22_T 3073-2019 旅行社冰雪旅游接待安全管理规范.docx VIP
- 导游在冰雪旅游中的安全要求与服务技巧.pptx VIP
- 三年(2022–2024)高考数学真题分类汇编(全国通用)专题05 平面解析几何(选择题、填空题)(解析版) .pdf VIP
- DB22_T3073-2019_旅行社冰雪旅游接待安全管理规范_吉林省.docx VIP
文档评论(0)