- 9
- 0
- 约2.07千字
- 约 15页
- 2021-12-11 发布于广东
- 举报
第一页,共15页 函数的定义 函数定义的格式 类型修饰符 函数名(形式参数表){函数体} 例:double sqare(double n){return n*n;} 参数 有参函数 各参数用逗号分隔,与变量说明方法相同 无参函数 “形式参数表”可以为空,也可用void 返回值 有返回值函数 1、“类型修饰符”说明返回值的类型,为 Int 时可以 省略,但不提倡 2、“函数体”中最后一语句应为: Return 表达式; 3、函数的返回值应与“类型修饰符”的说明一致, 兼容的转换,不兼容的发生编译错误 无返回值函数 1、“类型修饰符”必须为Void 2、“函数体”中最后语句可以为:Return; 也可不用 第二页,共15页 函数调用 函数调用格式 函数名(实在参数表) 实 参 与形参在数量、类型、次序上必须一致类型不一致时,兼容的转换,不兼容的发生编译错误 调用方法 作为表达式 1、必须是有返回值的函数 2、例:result=sqare(5.0); 作为语句 1、可以没有返回值,有,也被舍弃不用 2、调用语句后加语句结束符构成表达式语句 3、例:Hi(); sqare(5.0); 函数的递归调用 函数直接或间接地调用自身 第三页,共15页 函数原形与头文件 三种格式 函数定义 类型修饰符 函数名(形式参数表){函数体} 函数原形 类型修饰符 函数名(形式参数表); 函数调用 函数名(实在参数表) 一项原则:在调用函数时,函数必须经过定义或原形说明 头文件 将C++应用程序中各个程序文件里面要调用的用户自定义函数的原形说明放在一个头文件中,在有函数调用的程序文件中包含这个头文件即可 第四页,共15页 多文件应用系统 第一个文件:描述函数的头文件 第二个文件:定义函数的程序文件 第三个文件:调用函数的主程序文件 第五页,共15页 参数传递 传值 把实参表达式的值作为一个副本传递给形参变量,函数调用不会改变实参的值 一维数组参数 1、在定义一个一维数组参数时,可以不限定数组元素的个数 2、在调用具有数组参数的函数时,须以单独的数组名为实在参数 二维数组参数 1、在定义一个二(或三)维数组参数时,其第一维可以不限定,但其余各维都须限定 2、在调用具有数组参数的函数时,须以单独的数组名为实在参数 3、仅用行下标引用一个二维数组时,实际上引用的是相应行的那个一维数组 说明:对于数组参数,形参数组是对应的实参数组的代表,而不是它的副本,因此,对形参数组的任何改变实际上就是对实参数组的改变 第六页,共15页 可选参数 在说明一个函数时,可以为形式参数表中的最后若干个参数设定默认值,从而把这些参数设定为可选参数 在调用这个函数时,如果没有给出对应于可选参数的实参,系统就自动以设定的默认值作为实参传递给这个函数 在调用具有可选参数的函数时,被省略的只能是最后的连续的若干个可选参数(即不能间隔省略) 可选参数的说明格式如下: 类型修饰符 变量名=默认值(常量表达式) 可选参数应该在函数原形中说明 第七页,共15页 内联函数 内联函数:在一般函数定义前面加上保留字inline,该函数即被说明为内联函数,例:inline int add2(int n){return n+2;} 内联展开:程序执行时,C++有可能直接调用函数体代码来替代对函数的调用 函数说明:内联函数的说明也应放置在头文件中 第八页,共15页 函数重载与名字混成 函数重载:允许定义同名的函数,但重载的函数必须在参数的数量上或类型上与其他同名函数有所不同 重载函数的调用:如果调用时所用的参数与所定义的各种情况均不相同,则编译系统会选择与其兼容的最相似的那个函数,并完成必要的类型转换,如果找不到兼容的函数,则产生编译错误 名字混成:编译系统在处理重载函数时会形成不同的内部名称,这种方法称为名字混成 在重载函数时必须保证在逐个去掉可选参数后,仍然在参数个数上或类型上与同名函数有所不同 第九页,共15页 函数的作用域 全局作用域:不但在定义函数的文件中可以调用,而且在同一应用系统的其他程序文件中也可调用 文件作用域:说明为static的函数只能被同一文件中的函数调用,例:static long add(long a,long b){return a+b;} 第十页,共15页 全局变量 全局变量:定义于函数外部的变量称为全局变量 静态生存期:全局变量在应用程序运行的整个期间都有效,如果在定义时未初始化,则自动初始化为0 文件作用域:全局变量定义时使用static修饰,则只允许同一文件中的函数访问该变量 跨文件作用域:全局变量定义时未使用static修饰,则还允许同一系统的其他程序文件中的函数访问该变量 外部说明:extern int a 应
您可能关注的文档
最近下载
- ¤东芝cv600调试OBM操作A(1).doc VIP
- 2026年上海市16区初三语文一模试题课外文言文今译汇编.docx VIP
- 13-EHR人力资源数字化管理咨询项目 86.pptx VIP
- (部编版)语文四年级上册寒假课外阅读“天天练”30篇,附参考答案.doc
- 江苏省苏州市2025-2026学年五年级上学期1月期末数学试卷三(有答案).docx
- 2025年山东省德州市中考生物真题(含答案解析).docx VIP
- 人力资源共享服务中心(HRSSC)建设方案.pptx VIP
- GB 342722025《小型游乐设施安全规范》解读.pptx VIP
- 陕22N1供暖工程建筑标准图集.docx VIP
- The Simpsons《辛普森一家》第一季第一集完整中英文对照剧本.docx VIP
原创力文档

文档评论(0)