C++程序架构.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C程序架构

C++程序架构 目 录 一、?????? 引言 二、?????? C++程序架构的基本元素? - 类 三、?????? C++程序开发过程 四、?????? MFC知识介绍 ?? (1)MFC是一个编程框架 ?? (2)MFC的宏观框架体系 ?? (3)MFC对象的创建过程 ????? 3.1创建关系 ??????3.2创建程序步骤 ??????3.3常用的类的层次 ??????3.4MFC运行层次结构图 ??????3.5WinMain入口函数 五、MFC程序流程 ? 一、引言 应用程序也像一个建筑物,有它的架构, 建筑物是有层次,模块, 和基本元素, 如砖块,或模版组成的。程序也非常相似,类就是C++程序架构的基本元素。 程序是运行在计算机上的, 而计算机必须有一个操作系统,我们把操作系统看作是一个平台, 程序就是运行在这个平台上, 就像建筑物总是起在一定的基础上一样。 操作系统提供了许多程序编程接口,API?。?应用程序通过API?调用操作系统许多内置的功能。 ??????????????????? ???????????????????????????????????????????????????? ? 二、C++程序架构的基本元素? - 类 C++程序是由一个一个类组成的,每一个类它可能是基类或者派生类,每一个类都封装了程序接口或者应用程序的概念等等,都有相应的功能和作用。通过类的继承,可以使用基类的特性,或者派生出其他的特性。使用虚拟函数和消息机制提供丰富的编程接口和控制。一个程序的入口点是其主函数,主函数的主要任务是完成一些初始化的工作和维护一个消息循环。通过主函数进入程序入口(如果编写的是基于Windows系统的程序,程序中将WinMain()函数作为应用程序的入口),根据主函数要求初始化窗口,发送消息调用其他的类,而类里封装着小程序或者低级的系统应用程序,然后完成类里的程序运行,这个过程也是对消息循环的维护。当按照发送消息的要求完成每一个类的调用,也就完成了一个程序。 C++程序启动和初始化过程是创建对象、建立各种对象之间的关系、把窗口显示在屏幕上的过程。而退出程序是关闭窗体销毁对象的过程。如果程序是MFC的Windows应用程序,程序使用WinMain()函数作为入口,这个函数已经通过封装隐藏与应用程序框架中。除WinMain()外,类似于CWinApp类成员函数Run()也是隐含执行的,Run()函数负责把消息放进应用程序窗口消息循环中,由WinMain()函数完成对Run的调用。当WinMain()函数寻找到应用程序对象后立即调用CWinApp类的虚函数InitInstance()进行重载,以知道究竟需要何种窗体框架。然后调用注册窗口类,进而调用LoadFrame()函数载入框架,使用派生类::Create()创建应用程序框架,接着创建程序窗口。使用显示更新函数显示更新程序窗口。 C++的类的调用过程也就是它的工作流程,也可以理解为类的消息循环,也就构成程序的框架。而这种消息的传送也就符合Windows应用程序的特点,消息驱动。如果我们要与程序交互的话,需要做的仅仅是选择适当的时机上系统产生消息了。 C++ 的模块和元素的运行法则 事件驱动。 C++的模块和元素之间的通讯??? 消息机制。? Windows消息机制 三、C++程序开发过程 根据问题建立模型,编写.h头文件、项目配置文件、.cpp源文件,然后预编译、编译,链接库文件,最后生成可执行程序。链接过程是将.obj目标代码和.lib函数库、类库合理有机组成.exe执行文件。(如下图) 四、MFC知识介绍 以MFC为例子,简单谈下自己对它的一些了解: (1)MFC是一个编程框架 MFC (Microsoft Foundation Class Library)中的各种类结合起来构成了一个应用程序框架,它的目的就是让程序员在此基础上来建立Windows下的应用程序,这是一种相对SDK来说更为简单的方法。因为总体上,MFC框架定义了应用程序的轮廓,并提供了用户接口的标准实现方法,程序员所要做的就是通过预定义的接口把具体应用程序特有的东西填入这个轮廓。Microsoft Visual C++提供了相应的工具来完成这个工作:AppWizard可以用来生成初步的框架文件(代码和资源等);资源编辑器用于帮助直观地设计用户接口;ClassWizard用来协助添加代码到框架文件;最后,编译,则通过类库实现了应用程序特定的逻辑; (2)MFC的宏观框架体系 ???????? MFC实现了对应用程序概念的封装,把类、类的继承、动态约束、类的关系和相互作用等封装起来。这样封装的结果对程序员来说,是一套开发模板(或者说模式)。针对不同的应用和目的,程序员采用不

文档评论(0)

sh4125733 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档