关键类
,MFC中关键类有:
CMFCAPP:最底层的类,也是最重要的类,统筹全局,管理DOCUMENT TEMPLATE
CFRAMEWND:框架窗口,包括菜单栏、工具栏、状态栏等等,主要是负责窗口的布局
CVIEW:负责展示具体的数据
CDOCUMENT:负责提供具体的数据
我们可以从CMFCAPP中直接看到他的三个类
点击 类视图 ==CMFCpaintApp===转到InitInstance定义
注意一下,这里三个类前面都有RUNTIME_CLASS,这是什么意思呢 ,我们查看其指针的定义,发现它的本质为struct CRuntimeClass,它里面有个成员函数,CObject* CreateObject();,这个函数的作用是一个虚函数,通过子类重构,来接收不同的消息,用以生成不同的窗口,即多态,另外
CRuntimeClass里还有一些成员变量及方法,可以获取RUNTIME_CLASSS的类的名字、和一些信息
它们的关系
1.查看CMFCAPP,发现它父类的父类的父类CWinThread,有一个成员变量,CDocManager* m_pDocManager,查看CDocManager定义,它里面又有一个CPtrList m_templateList链表,包含了所有的文档,它的用处是维护所有的DOCUMENTTEMPLATE