你是否正在寻找关于declare_dyncreate的内容?让我把最有价值的东西奉献给你:
declare_dyncreate与DECLARE_DYNAMIC区别
本文章已收录于:
分类:
版权声明:本文为博主原创文章,未经博主允许不得转载。
DECLARE_DYNAMIC 表示可以运行时识别该类
declare_dyncreate 包含了DECLARE_DYNAMIC的功能,并且可以在运行过程中动态创建对象。如果需要动态创建类对象,需要使用这个宏定义,。
DECLARE_DYNCREAT定义如下:
#define declare_dyncreate(class_name) \
DECLARE_DYNAMIC(class_name)\
static CObject* PASCALCreateObject();(这一句就是declare_dyncreate多出来的一句)
这里是DECLARE_DYNAMIC声明的(本质上就是声明了一个CruntimClass,并且提供了一个可以获取CruntimeClass的函数)
DECLARE_DYNAMIC(class_name)
public:
##class_name;
virtual CRuntimeClass* GetRuntimeClass()const;
RUNTIME_CLASS的本质,就是获取该类的类型为CruntTimeClass的成员变量
((CRuntimeClass*)(&class_name::class##class_name))
顶 0 踩 0
我的同类文章
以上就是关于declare_dyncreate的全部内容,相信你一定会非常满意。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shenmilingyu/article-844-1.html
你们退休金还有1900元