c 程序设计教程7

c 程序设计教程7

ID:19924998

大小:28.50 KB

页数:5页

时间:2018-10-07

c  程序设计教程7_第1页
c  程序设计教程7_第2页
c  程序设计教程7_第3页
c  程序设计教程7_第4页
c  程序设计教程7_第5页
资源描述:

《c 程序设计教程7》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、C程序设计教程7本文由逝流水12贡献ppt文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。C++程序设计教程(第二版)第七章程序结构Chapter7ProgramStructure清华大学出版社钱能22:51:461程序结构:使程序得以运行的框架组织便是程序结构,对程序结构的研究,是为了更好地表达算法思想,使其符合编译逻辑,又具有更好的可读性和可维护性学习目标:1.从简单的函数层层调用,初步理解C++程序结构2.学习合理组织程序的规则与经验,掌握扩展程序规模的基本方法22:51:462第七章内容1.2.3

2、.4.5.6.7.22:51:46函数组织(函数组织FunctionOrganization)头文件(HeaderFiles)全局数据(GlobalData)静态数据(StaticData)作用域与生命期(Scope&Lifetime)名空间(namespace)预编译(Pre-Compilation)31.函数组织(FunctionOrganization)函数:对输入参数负责,埋头做自己的事,最终返回结果函数组织:通过在函数中进行函数调用来扩展运行的规模,层层叠叠的函数构成树结构做法:将若干个函数组织成文件,又将若干个文件构成程序

3、的办法来进行编程分工22:51:464对如下的函数调用关系,进行文件划分文件1文件2mainf2f1f3pg1g2h文件322:51:4652.头文件(HeaderFiles)P217原始头文件:作为共同开发的项目,为了共享彼此的过程资源(函数),将全体函数声明放在一个共用的头文件中界面头文件:界定模块可用资源(函数,数据,类型等)(可由一个或几个头文件组合,其实现由他人提供),或提供他人使用的模块资源.它是由软件工程师分发的、以规范项目开发为目的的资源文件做法:练习划分函数组,模仿学习构造头文件,并注意头文件的应含内容22:51:4

4、66原始头文件(包含7-3的图中的一切函数声明)//abc.hvoidf1();voidf2();voidf3();voidg1();voidg2();voidp();voidh();22:51:467头文件的使用:使函数调用免于声明//a1.cpp#include”abc.h”voidf1(){if(…){p();g1();else{g2();h();}}22:51:468头文件的使用:使函数调用免于声明//a2.cpp#include”abc.h”intmain(){f1();f2();f3();}//voidf3(){f1();

5、}//voidp(){f3();}//22:51:469头文件的使用:使函数调用免于声明//a3.cpp#include”abc.h”voidh(){…}voidf2(){g1();g2();}//voidg1(){…}voidg2(){…}22:51:4610界面头文件//a1.ha1.cpp提供的资源提供的资源voidf1();//a2.ha2.cpp提供的资源提供的资源voidp();//a3.ha3.cpp提供的资源提供的资源voidg1();voidg2();voidf2();voidh();22:51:4611使用界面头文

6、件//a1.cpp#include”a2.h”#include”a3.h”voidf1(){if(…){p();g1();}else{g2();h();}}22:51:4612使用界面头文件//a2.cpp#include”a1.h”#include”a3.h”staticvoidf3();intmain(){f1();f2();f3();}voidf3(){f1();}voidp(){f3();}22:51:4613使用界面头文件P221//a3.cpp#include”a3.h”voidh(){…}voidf2(){g1();g2

7、();}voidg1(){…}voidg2(){…}22:51:46143.全局数据(GlobalData)全局数据:使若干个模块在程序范围内共享(读与写)数据,是若干程序文件沟通数据的一种形式意义:模块的独立性由数据的封闭性来支持.全局数据破坏了数据的封闭性,因而对小程序简单而对规范化程序则不登大雅之堂做法:练习函数之间用参数传递数据的常规形式,尽量避免使用全局数据22:51:4615例如:对于矩阵的输入、处理和输出vectora;//globalDatavoidinput();voidtranspose();voi

8、dprint();intmain(){input();transpose();print();}//usinga//usinga//usinga1622:51:46消去全局数据:前一个过程的输出作为后一个过程的输入typ

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。