- 1、本文档共37页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5.5 带默认参数的函数 cont“矩形相关的参数和体积为:”; contget_volume(x)endl; cont矩形相关的参数和体积为:”; cont get_volume(x,7)endl; cont矩形相关的参数和体积为:”; Contget_volume(5,5,5)endl; return 0; } int get_volume(int length,int width,int height) { contsetw(5)lenthsetw(5)widthsetw(5)height“;”; 5.5 带默认参数的函数 return length*width*height; } 【例5.17】程序的运行结果为: 矩形相关的参数和体积为:10 12 15;1800 矩形相关的参数和体积为:10 12 3;360 矩形相关的参数和体积为:10 2 3;60 矩形相关的参数和体积为:10 7 3;210 矩形相关的参数和体积为:5 5 5;125 5.5 带默认参数的函数 5.5.2 调用默认参数函数应注意的问题 带默认参数函数的有一定的规定: 带默认形参值的函数其默认参数必须从右向左顺序给定。 函数调用出现在函数定义之前,默认参数要在函数原型说明中给出,反之,默认参数要在函数定义中给出。 在相同的作用域内,默认形参值的说明应保持唯一,但如果在不同的作用域内,允许说明不同的默认形参。 5.6 变量的生存期、作用域和命名空间 5.6.1 变量的生存期 在第2章已经讲过变量声明的一般格式,其实变量声明语句的完整格式应为: [存储属性] 数据类型 变量名1,变量名2,…,变量名n; 存储属性表明变量在内存的区域,除了有自动(auto)、外部、静态(static)三种属性外,若是整数类型还可以是寄存器(register)属性。 外部属性一般由变量定义的物理位置确定,通常是在所有大括号对之外,该变量具有全局的生命期和全局的作用域。 上一页 下一页 返回 5.6 变量的生存期、作用域和命名空间 静态(static)属性作用于外部变量,该变量具有全局的生命期和文件的作用域,也就是该变量在该文件中可见;若作用于局部变量时,该变量具有全局的生命期和局部的作用域。 自动(auto)属性一般是在大括号对内定义的变量,该变量具有局部的生命期和局部的作用域,当一个变量在大括号对内定义时,auto关键字可以省略。若是整型变量,对其访问的次数频繁,可以将其定义为 register 属性,该属性是将变量存储于CPU内的寄存器中,一般允许两个,在定义多个时,系统将超过部分作为自动型处理。 上一页 下一页 返回 5.6 变量的生存期、作用域和命名空间 在C++ 语言中变量有静态生存期和动态生存期的问题。如果对象的生存期与程序的运行期间相同,则该对象具有静态的生存期。在文件作用域内定义的对象具有静态的生存期;在块作用域内定义的对象要具有静态的生存期,需要在定义对象的时候在前面加上“static”关键字。动态生存期就是对象的创建与撤销是在块的范围之内。其生存期从对象定义点开始,到包围该对象定义的大括号结束。 上一页 下一页 返回 5.6 变量的生存期、作用域和命名空间 5.6.2 变量的作用域 在某个函数中定义的变量就只能在这个函数中引用,这就是变量的作用域问题。变量的作用域讨论的是一个标识符起作用的范围。C++ 变量的作用域可以分为:函数原型作用域,局部作用域,文件作用域、全局作用域和对象族作用域。 1. 函数原型作用域 所谓函数原型作用域就是在函数说明时形式参数的作用范围。 上一页 返回 5.6 变量的生存期、作用域和命名空间 2. 局部作用域 定义在大括号内的变量一般称为局部变量,局部变量的作用域从说明变量处开始,一直到块结束的大括号为止。 3. 全局作用域或文件作用域 在大括号之外定义的变量具有全局的生存期和全局的作用域,这种变量的作用域开始于变量定义点,结束于本文件。若是多文件系统,用extern说明,还可以在其他文件中引用。 如果一个全局变量在定义时其数据类型前面冠以“static”关键字,该变量具有全局的生存期和本文件的作用域,也就是该变量只能在定义它的文件中引用。 下一页 返回 5.6 变量的生存期、作用域和命名空间 5.6.3 命名空间 为了解决同名成员在一个系统中的引用问题,C++ 语言在 1993 年引入了命名空间“namespace”的概念及其应用方法。 在程序中使用命名空间,首先要将通常使用的I/O包含文件“iostream.h”改为“iostream” ;其次还要加入“using namespace std;”语句。 命名空间定义的格式为: name
您可能关注的文档
- autocad机械设计标准教程教学课件作者章继涛第3章.ppt
- autocad机械设计标准教程教学课件作者章继涛第4章.ppt
- autocad机械设计标准教程教学课件作者章继涛第5章.ppt
- autocad机械设计标准教程教学课件作者章继涛第6章.ppt
- autocad机械设计标准教程教学课件作者章继涛第7章.ppt
- autocad机械设计标准教程教学课件作者章继涛第8章.ppt
- autocad机械设计标准教程教学课件作者章继涛前言.ppt
- autocad实操与实训教学课件作者曹敏模块二平面图形绘制.ppt
- autocad实操与实训教学课件作者曹敏模块六autocad三维建模简介.ppt
- autocad实操与实训教学课件作者曹敏模块七图形输出.ppt
- 中考语文复习专题二整本书阅读课件.ppt
- 中考语文复习积累与运用课件.ppt
- 2025年初中学业水平考试模拟试题(二)课件.ppt
- 四川省2015届理科综合试题48套第12套.pdf
- 【课件】战争与和平—美术作品反映战争+课件-2024-2025学年高中美术湘美版(2019)美术鉴赏.pptx
- 【课件】青春牢筑国家安全防线 课件 2024-2025学年高中树立总体国家安全观主题班会.pptx
- 【课件】原始人的创造+课件高中美术湘美版(2019)美术鉴赏.pptx
- 上海证券-美容护理行业周报:流量加快去中心化,强运营头部品牌影响较小 -2024-.pdf
- T_CSEIA 1005—2023_能源工业互联网平台数据治理要求.pdf
- T_CDSA 504.16-2023_急流救援技术培训与考核要求.pdf
最近下载
- 1.1+磁场对通电导线的作用力(安培力)说课课件-2024-2025学年高二下学期物理人教版(2019)选择性必修第二册.pptx
- (新)初中历史中考总复习思维导图汇总.docx VIP
- 《天一阁登科錄中的明代进士户籍分析》.pdf
- 基于Arduino的实验室安防监测系统设计.doc
- 初中历史《中考必备的20张思维导图》.docx VIP
- 超长结构膨胀加强带连续无缝施工方案.doc VIP
- 2024年浙江省杭州市上城区行政服务中心招聘6人历年公开引进高层次人才和急需紧缺人才笔试参考题库(共500题)答案详解版.docx
- 麻黄鸡种鸡饲养技术规程.pdf VIP
- 《中文版AutoCAD 2022基础与应用项目教程》全套教学课件.pptx
- 出院患者随访制度和流程.doc
文档评论(0)