- 1、本文档共48页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
visualc实用教程第7章
第7章 MFC编程基础知识 7.1 MFC 概述 7.2 MFC的层次结构及其子类功能简介 7.3 MFC应用程序架构 习题 概述 VC开发应用程序的最常用的模式就是利用MFC进行Win32应用程序的设计。简单来说,MFC就是利用面向对象的思想,将Windows大部分API函数封装起来的一个浩瀚的类库,利用MFC编写程序本质上就是选择该类库中合适的类,并调用其下相应成员函数来完成某个功能。虽然MFC编程相对于API编程简单了(入门是简单了,但作到胸中丘壑自成却不容易),但初学者却常常忘不了学习MFC的艰难。其主要原因有:(1)MFC采用的是C++语言,对C++本身的技术没有掌握。因此想学好MFC,必须把第一篇的内容搞清楚;(2)MFC庞大的类库中类的命名及成员变量或成员函数的命名没有清楚,其实很简单,MFC中的类及其成员的命名都采用的是匈牙利命名法,把这些名字的英文直接翻译过来,就知道它是什么意思。(3)MFC编程,首先生成的是一个应用程序架构,对这个架构的不了解导致生成的代码不知其为何如此。本章就是要给大家一个架构的概貌;(4)传统的API编程的步骤统统不见了, 使人们不知道编写的Windows程序什么时候建立起来 、什么时候消亡. 事实上,MFC的应用程序架构把类似于API编程所要求的步骤都隐藏了,都封装到架构中了 概述(续) 对于初学者,只需要清楚自己的代码往什么地方添加就可以(5) 缺乏面向对象分析能力。面向对象的分析要求搞清楚一个系统中有哪些类、各个类之间有哪些联系,尤其是在编写基于文档/视图结构的应用程序时。该方面能力的培养要靠多分析一些程序中类之间的关系,并要参考相关方面的书籍介绍。 本章把MFC类库中的主要类以层次结构做了一个简单的介绍,并对MFC应用程序的架构做了描述。对于MFC应用程序的学习,刚开始要“不求甚解”,懂得代码的放置以及原理就可以了,随着学习的深入,在查看MFC源代码后,就能逐渐了解到该类型应用程序的执行流程,从而最终掌握MFC应用程序的开发。 7.1 MFC概述 7.1.1 什么是MFC 7.1.2 MFC的设计原理 7.1.3 MFC的目标 *7.1.4 MFC的发展 *7.1.5 使用C++和MFC的好处 7.1.1 什么是MFC MFC是Microsoft Foundation Class(微软基础类)的缩写。从物理角度看,它是一个庞大的类库、包含可控制计算机系统方方面面的类库,它对应的是Windows系统目录下的一系列mfc*.dll文件;从逻辑角度看,它是一个面向对象的应用程序框架,程序员可以使用这一框架创建Windows应用程序。MFC的组织是以C++类的层次形式组织在一起,几个高层类提供一般功能,而低层类实现更具体的功能,每一个低层类都是从高层类派生而来,因此继承了高层类的功能。 MFC处理很多与Windows相关的常见任务,例如在后台做消息处理以及对消息进行路由选择,无需程序员在每一个开发的Windows应用程序中编写相同的消息处理循环,MFC已经实现了这一消息循环,并对大多数常见的消息提供了易学易用的消息响应函数。例如OnPain()就是CWnd类的一个成员函数,是对WM_PAINT消息进行响应的一个虚成员函数。 除了类的层次外,MFC也提供了一个应用程序开发框架,此框架被称为文档/视图架构。 7.1.2 MFC的设计原理 MFC向软件开发者提供一组服务,来协调应用程序。在很多情况下,MFC在幕后执行一系列复杂的操作,它向程序员提供了更加简单的编程界面,并可掩盖Windows API的一些缺点(MFC类的许多成员函数,如MessageBox()中提供了缺省参数,这减轻了程序员编程的负担)。 MFC采用面向对象的设计方法,将Windows API中的相关部分组合到C++类或对象中。例如CWnd类封装了大部分有关窗口处理的API?函数。作为编程人员,不必记忆大量API?函数,需要作的只是实例化CWnd类的一个实例,并调用相应的成员函数即可。 7.1.3 MFC的目标 建立MFC库的目的是为了简化Windows应用程序的编制,MFC开发小组的工作是将此目的和程序设计原理结合起来。Microsoft在建立MFC库遵循了一些基本原则,下面所列的设计原则,也就是他们的设计目标: (1) 有效简化编写Windows应用程序的难度,使用C++创建Windows应用程序的过程容易和直观。 (2) 合并已有的Windows的模型和概念。 (3) 确保类库有足够的扩展性,以便于加入Wind
您可能关注的文档
- spss 第1讲 数据录入及整理.ppt
- simufct.forming9.0新功能介绍.pdf
- spss 第6讲 回归分析.ppt
- spss 第8讲 因子分析与对应分析.ppt
- SPSS教程CH13 区别分析.ppt
- SPSS教程cH14 典型相关分析.ppt
- SPSS教程CH12 多变量变异数分析、共变异数分析.ppt
- SQL 2005-VB.NET和sql开发应用程序.ppt
- sql 2005教程 第13章 触发器.ppt
- sql 2005教程 第14章 事务和锁.ppt
- 2023-2024学年广东省深圳市龙岗区高二(上)期末物理试卷(含答案).pdf
- 2023-2024学年贵州省贵阳市普通中学高一(下)期末物理试卷(含答案).pdf
- 21.《大自然的声音》课件(共45张PPT).pptx
- 2023年江西省吉安市吉安县小升初数学试卷(含答案).pdf
- 2024-2025学年广东省清远市九校联考高一(上)期中物理试卷(含答案).pdf
- 广东省珠海市六校联考2024-2025学年高二上学期11月期中考试语文试题.pdf
- 2024-2025学年语文六年级上册第4单元-单元素养测试(含答案).pdf
- 2024-2025学年重庆八中高三(上)月考物理试卷(10月份)(含答案).pdf
- 安徽省安庆市潜山市北片学校联考2024-2025学年七年级上学期期中生物学试题(含答案).pdf
- 贵州省部分校2024-2025学年九年级上学期期中联考数学试题(含答案).pdf
文档评论(0)