大多数 Microsoft 基础类 (MFC) 库中的类派生自单个根处的基类的类层次结构(CObject)。所有 MFC 应用程序都具有至少两个对象: 应用程序对象派生自CWinApp,和某种形式的主窗口对象 (一般间接) 派生自CWnd。

应用程序的层次结构如下:

class AFX_NOVTABLE CCmdTarget : public CObject;
	class CWinThread : public CCmdTarget;
		class CWinApp : public CWinThread;
			class CWinAppEx : public CWinApp;
				class CMFCApp : public CWinAppEx;

使用文档/视图体系结构的应用程序包含其他对象。 主要对象有:
应用程序对象派生自类CWinApp,如前面所述。
一个或多个文档类对象派生自类CDocument。 文档类对象负责视图中操作数据的内部表示。 它们可能与数据文件关联。
一个或多个视图对象派生自类CView。 每个视图都是附加到文档并与框架窗口关联的一个窗口。 视图显示和操作文档类对象中包含的数据。

根据结构可以知道,大部分的主要对象CWinApp, CWnd, CDocTemplate, CDocument, CView派生自CCmdTarget

Win32程序观念:

message based,event driven,multitasking,multithreading,consolr programing

MFC四大技术障碍:

面向对象观念与C++语言;

Windows程序基本观念(程序进入点、消息传递、窗口函数、callback);

Microsoft foundation classes本身

visual C++ 集成开发环境与各种开发工具

事件驱动的特点:

消息产生、获得、分派、判断、处理;

Windows程序开发流程:

Windows程序分为程序代码和UI资源两大部分。,这两大部分最后以RC编译器整合为一个完整的exe档案。其中UI资源是指功能菜单、对话框外貌、程序图标、光标形状等等。这些UI资源借助各种工具产生,并以各种扩展名的文件存在。RC编译器读取RC文件的描述将所有UI文件集中在一个.RES文件,再与程序集合在一起,这才是一个完整的Windows可执行文件。

MFC学习之路

MFC关于各种类的层次结构:
MFC学习之路

MFC学习之路

MFC学习之路

相关文章: