设为首页 加入收藏

TOP

5.4.1 基本思路
2013-10-07 00:47:13 来源: 作者: 【 】 浏览:47
Tags:5.4.1 基本 思路

5.4  回到案例场景

视频精讲:光盘\video\05\本关任务.swf

在Visual Studio 2008下,设计并制作能够模拟MFC机制(如动态创建)的应用程序,其运行结果如图5-5所示。


 
图5-5  模拟MFC动态创建机制

5.4.1  基本思路

在Win32控制台程序中模拟MFC动态创建机制的基本流程如下。

(1)编辑并实现MFC的动态创建机制。

定义CRuntimeClass结构。

给出DECLARE_DYNAMIC、DECLARE_DYNCREATE、IMPLEMENT_DYNAMIC及IMPLEMENT_DYNCREATE等宏的定义。

按照MFC中类的层次结构定义类,并为需要支持动态创建的类进行声明。

给出类中各成员函数的具体实现,并初始化类的CRuntimeClass对象。

(2)编辑并实现对动态创建机制的测试。

定义想要实现动态创建机制的类。

给出类中各成员函数的具体实现。

给出main()函数,实现对动态创建机制的测试。

具体的实现步骤如下。

(1)编辑并实现MFC的动态创建机制

在Win32工程中新建一个C++(www.cppentry.com)头文件MFC.h,在其中对CRuntimeClass对象的结构进行定义。

在MFC.h中给出用于声明动态创建的DECLARE_DYNAMIC()和DECLARE_DYNCREATE()宏的定义,以及用于给出动态创建实现的IMPLEMENT_DYNAMIC()及IMPLEMENT_ DYNCREATE()等宏的定义。

在MFC.h中,按照MFC的类层次结构给出各个类的定义,并分别使用DECLARE_DYNCREATE()宏和DECLARE_DYNAMIC()宏为需要支持动态创建的类及其他类进行声明。

在Win32工程中新建一个C++(www.cppentry.com)源文件MFC.cpp,在其中给出步骤3定义的各个类的成员函数的具体实现,并通过用IMPLEMENT_DYNCREATE()宏和IMPLEMET_DYNAMIC()宏初始化类的CRuntimeClass对象,实现对动态创建机制的支持。

(2)编辑并实现对动态创建机制的测试

为测试上述步骤中已编辑好的动态创建机制,需要在Win32工程中再新建一个C++(www.cppentry.com)头文件MyTest.h,并在该头文件中用DECLARE_DYNCREATE()宏定义想要实现动态创建机制的类。

在Win32工程中新建一个对应于MyTest.h的C++(www.cppentry.com)源文件MyTest.cpp,在该源文件中给出MyTest.h定义的各个类的成员函数的具体实现,并用IMPLEMENT_DYNCREATE()宏实现动态创建机制。

在MyTest.cpp中编写main()函数,实例化应用程序类及CRuntimeClass结构的指针对象,并根据在CRuntimeClass对象中保存的类的信息完成对动态创建机制的测试。


【责任编辑:云霞 TEL:(010)68476606】

回书目   上一节   下一节

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇6月编程语言排行榜:JavaScript转.. 下一篇5.3.5 命令路由

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: