MFC 概述!!什么叫 MFC
经常在 VC 中听别人讲 MFC 但一直不知道到底是什么意思,MFC 简单来说就是 VC
的类库.
MFC 是一个编程框架
MFC (Microsoft Foundation Class Library)中的各种类结合起来构成了一个应
用程序框架,它的目的就是让程序员在此基础上来建立 Windows 下的应用程序,
这是一种相对 SDK 来说 更为简单的方法。因为总体上,MFC 框架定义了应用程序
的轮廓,并提供了用户接口的标准实现方法,程序员所要做的就是通过预定义的
接口把具体应用程序特有 的东西填入这个轮廓。Microsoft Visual C++提供了相
应的工具来完成这个工作:AppWizard 可以用来生成初步的框架文件(代码和资
源等);资源编辑器用于帮助直观地设计用户接口; ClassWizard 用来协助添加
代码到框架文件;最后,编译,则通过类库实现了应用程序特定的逻辑。
封装
构成 MFC 框架的是 MFC 类库。MFC 类库是 C++类库。这些类或者封装了 Win32 应
用程序编程接口,或者封装了应用程序的概念,或者封装了 OLE 特性,或者封装
了 ODBC 和 DAO 数据访问的功能,等等,分述如下。
(1)对 Win32 应用程序编程接口的封装
用 一个 C++ Object 来包装一个 Windows Object。例如:class CWnd 是一个 C++
window object,它把 Windows window(HWND)和 Windows window 有关的 API 函数
封装在 C++ window object 的成员函数内,后者的成员变量 m_hWnd 就是前者的窗
口句柄。
(2)对应用程序概念的封装
使用 SDK 编写 Windows 应用程序时,总要定义窗口过程,登记 Windows Class,
创建窗口,等等。MFC 把许多类似的处理封装起来,替程序员完成这些工作。另
外,MFC 提出了以文档-视图为中心的编程模式,MFC 类库封装 了对它的支持。
文档是用户操作的数据对象,视图是数据操作的窗口,用户通过它处理、查看数
据。
(3)对 COM/OLE 特性的封装
OLE 建立在 COM 模型之上,由于支持 OLE 的应用程序必须实现一系列的接口
(Interface),因而相当繁琐。MFC 的 OLE 类封装了 OLE API 大量的复杂工作,
这些类提供了实现 OLE 的更高级接口。
评论0