
C++面向对象程序设计课件第三章 C++程序的结构.ppt
1、18 十二月 2023C+面向对象程序设计第三章 C+程序的结构t3.1 作用域和可见性t3.2 生存期t3.3 变量的存储类型t3.4 编译预处理和多文件结构t项目设计2 预处理及多文件结构18 十二月 2023C+面向对象程序设计3.1 作用域和可见性t3.1.1 作用域t3.1.2 可见性18 十二月 2023C+面向对象程序设计3.1.1 作用域t作用域是标识符在程序中有效的范围l块作用域t当标识符的声明出现在由一对大括号所括起来的一段程序(块)内时,该标识符的作用域从声明点开始,到块结束的大括号处为止,该作用域的范围具有局部性。t例如,如下代码:void fun(int a)/a的作用域起始处int b=1;/b的作用域起始处 18 十二月 2023C+面向对象程序设计3.1.1 作用域l函数原型作用域t函数原型作用域指的是在声明函数原型所指定的参数标识符的作用范围。if(ab)int c;/c的作用域起始处c=a-b;coutc;./c的作用域终止处 /a和b的作用域终止处18 十二月 2023C+面向对象程序设计3.1.1 作用域t这个作用范围是在函数原型声明中的左、右括
2、号之间。l函数作用域t在C+语言中,只有goto语句中的标号标识符具有函数作用域。t由于goto语句的滥用导致程序流程无规则、可读性差。因此现代程序设计方法不主张使用goto语句。l文件作用域t文件作用域是在所有函数定义之外声明的,其作用域从声明之处开始,直到文件结束。18 十二月 2023C+面向对象程序设计3.1.2 可见性t可见性是从对标识符的引用的角度来谈的概念。如果标识符在某处可见,则就可以在该处引用此标识符。程序运行到某一点能够引用到的标识符就是该处可见的标识符。t作用域指的是标识符有效的范围,而可见性是分析在某一位置标识符的有效性。18 十二月 2023C+面向对象程序设计3.1.2 可见性t作用域可见性的一般规则是:l标识符应声明在前,引用在后。l在同一作用域中,不能声明同名的标识符。l在没有互相包含关系的不同的作用域中声明的同名标识符互不影响。l对于两个嵌套的作用域,如果在内层作用域内声明了与外层作用域中同名的标识符,则外层作用域的标识符在内层不可见。18 十二月 2023C+面向对象程序设计3.1.2 可见性t作用域与可见性实例:#include using nam
3、espace std;int i;/变量i具有文件作用域void main()i=5;/文件作用域的i赋初值 /子块1 int i;/变量i具有块作用域 i=7;couti=iendl;/输出7couti=iendl;/输出5 18 十二月 2023C+面向对象程序设计3.2 生存期t3.2.1 静态生存期t3.2.2 动态生存期18 十二月 2023C+面向对象程序设计3.2.1 静态生存期t静态生存期与程序的运行期相同,只要程序一开始运行,这种生命期的变量就存在,当程序结束时,其生命期就结束。l具有静态生命期的变量在定义时就分配固定的存储单元,并一直保持不变,直至整个程序结束。l如果要在函数内部的块作用域中声明具有静态生存期的变量,则要使用关键字static,例如下列语句声明的变量i便是具有静态生存期的变量,也称为静态变量:static int i;l静态生命期的变量,若无显式初始化,则自动初始化为0。18 十二月 2023C+面向对象程序设计3.2.2 动态生存期t在块作用域中声明的变量具有动态生存期,也可称为局部生存期变量。这种变量的生存期开始于程序执行经过其声明点时,而结束于
4、其作用域结束处。l具有动态生存期的变量是在程序执行过程中,使用它的时候才分配存储单元,使用完毕就立即释放。18 十二月 2023C+面向对象程序设计3.2.2 动态生存期t变量的动态生存期与可见性例子#include using namespace std;int i=1;/i具有文件作用域和静态生存期void main(void)/a具有块作用域和静态生存期,局部可见。static int a;int b=-10;/b,c具有块作用域和动态生存期。int c=0;void other(void);cout-MAIN-n;cout i:i a:a b:b c:cendl;18 十二月 2023C+面向对象程序设计3.2.2 动态生存期 c=c+8;other();cout-MAIN-n;cout i:i a:a b:b c:cendl;i=i+10;other();void other(void)static int a=2;static int b;/a,b具有块作用域和静态生存期,局部可见 /只在第一次进入函数时被初始化。18 十二月 2023C+面向对象程序设计3.2.2 动态生
5、存期 int c=10;/C具有块作用域和动态生存期 /每次进入函数时都初始化。a=a+2;i=i+32;c=c+5;cout-OTHER-n;cout i:i a:a b:b c:cendl;b=a;18 十二月 2023C+面向对象程序设计3.3 变量的存储类型t3.3.1 局部变量t3.3.2 全局变量t3.3.3 外部变量18 十二月 2023C+面向对象程序设计3.3.1 局部变量t具有块作用域的变量称为局部变量。t一般说来,用自动存储类型(auto)声明的变量都是限制在某个程序范围内使用的,即为局部变量。t使用关键字register声明寄存器类型的变量的目的是将所声明的变量放入寄存器内,从而加快程序的运行速度。t静态类型(static)变量也是一种局部变量。它和自动存储类型变量的最大不同之处在于:静态存储类型变量在内存中是以固定地址存放的,而不是以堆栈方式存放的。18 十二月 2023C+面向对象程序设计3.3.1 局部变量t在C+语言中,声明局部变量的时候加上关键字static就构成了静态局部变量。t局部变量实例参见教材 例 3-318 十二月 2023C+面向对象程序设
《C++面向对象程序设计课件第三章 C++程序的结构.ppt》由会员m****u分享,可在线阅读,更多相关《C++面向对象程序设计课件第三章 C++程序的结构.ppt》请在八斗文库上搜索。

《MATLAB图像处理实例详解》课件Chapter_9o第9章彩色图像处理.pptx

《MATLAB图像处理实例详解》课件Chapter_6i第6章图像复原技术.pptx

《MATLAB图像处理实例详解》课件Chapter_13a第13章小波在图像处理中的应用.pptx

《Windows Server操作系统维护与管理项目教程》课件学习情境4.pptx

《MATLAB图像处理实例详解》课件Chapter_11o第11章图像特征分析.pptx

《中外广告史》课件第七章ppt.pptx

《经济学原理与应用》课件第8章ppt.pptx

《企业内部控制与制度设计(第3版)》课件项目五销售业务内部控制与制度设计.pptx

《经济学原理与应用》课件第4章ppt.pptx

《企业内部控制与制度设计(第3版)》课件项目三采购业务内部控制与制度设计.pptx

《资产评估》课件项目 八企业价值评估.ppt

《经济学原理与应用》课件第7章ppt.pptx

《人员测评原理与方法(第三版)》课件第十一章 个人资料的分析与评鉴.pptx

课件《客舱设施与服务》(模块一实操).pptx

《新编文学理论(第二版)》课件第七章.pptx

课件《客舱设施与服务》(模块三案例).pptx

《资产评估》课件项目四 机器人设备评估.ppt

《企业纳税实务(第3版)》项目一、项目二.ppt

《酒吧服务与管理(第3版)》课件模块一酒吧概述.ppt

《营销心理学》课件项目二 探索消费者的心理过程.pptx

《人员测评原理与方法(第三版)》课件第五章智能测评.pptx

《人员测评原理与方法(第三版)》课件第七章 胜任素质测评.pptx

《银行产品推广与服务》课件.pptx

《客舱设施与服务》模块二练习题答案.docx

《经济学原理与应用》课件第3章ppt.pptx

《中外广告史》课件第十章.pptx

《酒吧服务与管理(第3版)》教案教案(模块十三).docx

《跨境电商通关实务(第2版)》课件2021课件4关务技能3-报关单填制.ppt

《客舱设施与服务》模块一练习题.docx

《资产评估》课件项目一 资产评估基本理论.ppt

《经济学原理与应用》课件第1章ppt.pptx

《企业内部控制与制度设计(第3版)》同步训练参考答案.doc

七年级上学期班主任教育教学工作总结【可编辑版】.doc

高校思想政治教育管理方法创新.docx

n4和n5 视频点播服务器介绍.doc

私人律师聘用合同书.docx

幼儿园的创城活动实施方案.docx

辩论赛反方发言稿(共3篇).docx

表态发言提振精神.docx

3D打印推广方案,3D打印网络营销推广方案.doc

表彰老师代表发言.docx

六级数学毕业考试模拟卷教四.doc

幼儿园校庆家长发言稿.docx

英语教师培训心得体会5篇.docx

人教小学数学六级下册说课稿比例的意义和基本性质2.doc

超越自我演讲稿(共7篇).docx

有关六年级下册数学教学计划范文锦集七篇.docx

鞭炮主持词(共12篇).docx

助力疫情防控社会实践总结5篇.docx

“商中间、末尾有0的除法”教学反思.docx

闭幕式领导讲话稿.docx

小学五级多音字汇编教师随笔.doc

表态发言 助困协会.docx

表态发言 营造干事氛围.docx

小学生数学观察物体说课稿.doc

幼儿园中班周工作计划模板5篇.docx

预算员年度工作总结模板5篇.docx

《不老泉》读后感13篇.docx

有关学前班家长发言稿.docx

英雄的事迹故事范文十篇 英雄的事迹先烈的故事.docx

补课发言稿(共6篇).docx

综合实践教学计划.docx

MapGIS燃气企业综合运营调度平台解决方案(定稿).doc

表彰会表态发言 乡镇.docx

幼儿园后勤的三篇工作计划.docx

表演主持词(共7篇).docx

TAS5717PHPR,TAS5719PHPR,TAS5717PHP,TAS5719PHP,TAS5717EVM,TAS5719EVM, 规格书,Datasheet 资料.doc

优秀班主任工作计划五篇.docx

表彰大会学生代表发言稿.docx

部队机关对照检查材料(共18篇).docx

部队战斗前动员讲话稿(共5篇).docx

员工试用期三个月工作总结10篇.docx

永不言弃军训心得体会5篇.docx

有关大专应届毕业生求职信3篇.docx

部队党委对照检查材料(共8篇).docx

道德讲堂讲话稿(共7篇).docx

做错事的幽默检讨书范文.docx

《福尔摩斯》读后感15篇.docx

游乐园六一儿童节策划方案.docx

财务工作会讲话稿(共7篇).docx

幼儿园简短家长发言稿大全.docx