+ -
当前位置:首页 → 问答吧 → MFC文档视图结构分析

MFC文档视图结构分析

时间:2011-12-24

来源:互联网

先上个图:
http://hi.csdn.net/attachment/201112/24/10181841_13247052951IQe.jpg
这个图是MFC文档,视图,应用程序,框架结构图
研究他的数据结构发现:
继续上图:
http://hi.csdn.net/attachment/201112/24/10181841_1324708789IWwS.jpg
分析数据结构发现:
这里只谈数据结构,摒弃成员函数:
CWinApp 类里有一个CDocManager类的指针
CDocManager 里面有一个链表类CPtrList的指针,这个链表就是来添加CDocTemplate类的对象
CDocTemplate这个是抽象类,所以添加的其实是CMultiDocTemplate或CSingleDocTemplate类的对象
CMultiDocTemplate或CSingleDocTemplate这两个类是典型的资源管理类,管理CDocument类的对象
CDocument类里也有一个链表类CPtrList的指针,这个链表是来添加CView类的对象
然后就是CView类,简直就是光源,四处发散,友元了很多类
然后是框架类CFrameWnd类,这个类保存了当前活动视图的指针
....................................

研究了有一阵子了,发现层次不够,思维放不开,思维总习惯性局限于一两个类之中,整体把握太差,不过总算有点收获,
搞清楚了这几个类之间的数据结构关系对于应用MFC多文档编程可谓是事半功倍。应为不会茫然,知道在这个类里面我能得到什么,可以得到什么。
我这里就全当抛砖引玉,至于如何跳出这个框架,那就请大牛们给点意见吧



作者: qscool1987   发布时间: 2011-12-24

........图呢,晕死,贴错了

作者: qscool1987   发布时间: 2011-12-24