清华大学:《C++语言程序设计》课程教学资源(PPT课件)第五章 C艹程序的结构

C++语言程序设计 第五章C十程序的结构 清华大学计算机与信息管理中心 郑莉
1 第五章 C++程序的结构 清华大学计算机与信息管理中心 郑 莉 C++语言程序设计

本章主要内率 作用域与可见性 ●对象的生存期 数据与函数 ●静态成员 ●共享数据的保护 友元 ●编译预处理命令 多文件结构和工程 休息
前一页 休息 2 本章主要内容 ⚫ 作用域与可见性 ⚫ 对象的生存期 ⚫ 数据与函数 ⚫ 静态成员 ⚫ 共享数据的保护 ⚫ 友元 ⚫ 编译预处理命令 ⚫ 多文件结构和工程

函数原形的作用域 作 用。函数原型中的参数,其作用域始于 ,结束于")"。 域与可见 ●例如,设有下列原型声明 double Area(double radius) 性 radius的作用域仅在于此, 不能用于程序正文其它地 方,因而可有可无 休息 3
前一页 休息 3 函数原形的作用域 ⚫ 函数原型中的参数,其作用域始于 "(",结束于")"。 ⚫ 例如,设有下列原型声明: double Area(double radius); radius 的作用域仅在于此, 不能用于程序正文其它地 方,因而可有可无。 作 用 域 与 可 见 性

块作用域 作 用。在块中声明的标识符,其作用域自声明处 域起,限于块中,例如: void fun(int a) 与 int b(a)i cin>>b if (b>0) b的作用域 见 性 intc;c的作用域 休息
前一页 休息 4 块作用域 ⚫ 在块中声明的标识符,其作用域自声明处 起,限于块中,例如: void fun(int a) { int b(a); cin>>b; if (b>0) { int c; ...... } } c的作用域 b的作用域 作 用 域 与 可 见 性

类和文件作用域 作 用。类作用域作用于特定的成员名,类及 域与可见 其对象有特殊的访问和作用域规则。 不在前述各个作用域中出现的声明, 具有文件作用域,这样声明的标识符 性的作用域开始于声明点,结束于文件 尾 休息
前一页 休息 5 类和文件作用域 ⚫ 类作用域作用于特定的成员名,类及 其对象有特殊的访问和作用域规则。 ⚫ 不在前述各个作用域中出现的声明, 具有文件作用域,这样声明的标识符 的作用域开始于声明点,结束于文件 尾。 作 用 域 与 可 见 性

可见性 作。可见性是从对标识符的引用的角度来谈 用的概念 域与可见 ●可见性表示从内层作用域向外层作用域 “看”时能看见什么。 如果标识在某处可见,则就可以在该处 性引用此标识符爱件作用线 类作用域 块作用域 休息
前一页 休息 6 可见性 ⚫ 可见性是从对标识符的引用的角度来谈 的概念 ⚫ 可见性表示从内层作用域向外层作用域 “看”时能看见什么。 ⚫ 如果标识在某处可见,则就可以在该处 引用此标识符。 块作用域 类作用域 文件作用域 作 用 域 与 可 见 性

可见性 作 用●标识符应声明在先,引用在后 域。在同一作用域中,不能声明同名的标识符 与。如果某个标识符在外层中声明,且在内层中 可没有同一标识符的声明,则该标识符在内层 见可见 性生。对于两个嵌套的作用域,如果在内层作用域 内声明了与外层作用域中同名的标识符,则 外层作用域的标识符在内层不可见 了一页休息
前一页 休息 7 可见性 ⚫ 标识符应声明在先,引用在后。 ⚫ 在同一作用域中,不能声明同名的标识符。 ⚫ 如果某个标识符在外层中声明,且在内层中 没有同一标识符的声明,则该标识符在内层 可见。 ⚫ 对于两个嵌套的作用域,如果在内层作用域 内声明了与外层作用域中同名的标识符,则 外层作用域的标识符在内层不可见。 作 用 域 与 可 见 性

例5.1 作 ifincludesjostream. h> 用 inti;∥x件作用域 域 int maIn0 与{i=5; 可{int;∥块作用域 见 性 cout<<"="<i<<end;∥输出7 cout<<"="<<i;∥输出5 return 0 休息
前一页 休息 8 #include int i; //文件作用域 int main() { i=5; { int i; //块作用域 i=7; cout<<"i="<<i<<endl; //输出 7 } cout<<"i="<<i; //输出 5 return 0; } 作用域与可见性 例 5.1

对泉的生存期 对象从产生到结束的这段时间就是 它的生存期。在对象生存期内,对象将 保持它的值,直到被更新为止。 休息
前一页 休息 9 对象的生存期 对象从产生到结束的这段时间就是 它的生存期。在对象生存期内,对象将 保持它的值,直到被更新为止

静态生存期 对 象·这种生存期与程序的运行期相同。 的。在文件作用域中声明的对象具有这种 生生存期。 存。在函数内部声明静态生存期对象,要 期冠以关键字 static。 休息
前一页 休息 10 静态生存期 ⚫ 这种生存期与程序的运行期相同。 ⚫ 在文件作用域中声明的对象具有这种 生存期。 ⚫ 在函数内部声明静态生存期对象,要 冠以关键字static 。 对 象 的 生 存 期
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第四章 类与对象.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第三章 函数.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第二章 C艹十简单程序设计.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第十三章 MFC库与 Windows程序开发概述.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第十二章 异常处理.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第十一章 流类库与输入/输出.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第十章 群体数据的组织.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第一章 绪论.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)目录.ppt
- 上海理工大学:《电子商务基础与应用》课程教学资源(PPT课件)第四版 第六章 网络交易行为.ppt
- 人民邮电出版社:《C++语言程序设计》课程教学资源(PPT课件讲稿)第12章 文件处理.ppt
- 人民邮电出版社:《C++语言程序设计》课程教学资源(PPT课件讲稿)第11章 C++输入/输出流.ppt
- 人民邮电出版社:《C++语言程序设计》课程教学资源(PPT课件讲稿)第10章 虚函数和多态性.ppt
- 人民邮电出版社:《C++语言程序设计》课程教学资源(PPT课件讲稿)第09章 继承性.ppt
- 人民邮电出版社:《C++语言程序设计》课程教学资源(PPT课件讲稿)第08章 运算符重载.ppt
- 人民邮电出版社:《C++语言程序设计》课程教学资源(PPT课件讲稿)第07章 类与数据抽象.ppt
- 人民邮电出版社:《C++语言程序设计》课程教学资源(PPT课件讲稿)第06章 指针和引用.ppt
- 人民邮电出版社:《C++语言程序设计》课程教学资源(PPT课件讲稿)第05章 结构体和共用体.ppt
- 人民邮电出版社:《C++语言程序设计》课程教学资源(PPT课件讲稿)第04章 数组.ppt
- 人民邮电出版社:《C++语言程序设计》课程教学资源(PPT课件讲稿)第03章 函数.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第六章 数组指针与字 符串.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第七章 继承与派生.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第八章 多态性.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第九章 群体类.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第一章 ntel8086/8088的基本结构.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)绪言.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第三章 汇编语言与汇编程序.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第二章 8086/8088的寻址方式与指令系统.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第五章 输入/输出与中断系统.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第七章 Win32汇编语言程序设计.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第四章 汇编语言程序设计的基本方法.ppt
- 《汇编语言程序设计》课程教学资源(PPT课件讲稿)第六章 32位汇编程序设计.ppt
- 北京邮电大学电信工程学院:高等教学计算机教材《C++大学基础教程》课程教学资源(PPT课件)第一章 计机基础知识.ppt
- 北京邮电大学电信工程学院:高等教学计算机教材《C++大学基础教程》课程教学资源(PPT课件)第七章 PowerPoint2000.ppt
- 北京邮电大学电信工程学院:高等教学计算机教材《C++大学基础教程》课程教学资源(PPT课件)第三章 操作系统.ppt
- 北京邮电大学电信工程学院:高等教学计算机教材《C++大学基础教程》课程教学资源(PPT课件)第二章 微型计算机系统.ppt
- 北京邮电大学电信工程学院:高等教学计算机教材《C++大学基础教程》课程教学资源(PPT课件)第五章 Word 2000.ppt
- 北京邮电大学电信工程学院:高等教学计算机教材《C++大学基础教程》课程教学资源(PPT课件)第八章 计算机网络基础与Internet应用.ppt
- 北京邮电大学电信工程学院:高等教学计算机教材《C++大学基础教程》课程教学资源(PPT课件)第六章 指针和引用.ppt
- 北京邮电大学电信工程学院:高等教学计算机教材《C++大学基础教程》课程教学资源(PPT课件)第四章 Windows2000.ppt