类对象动态创建,为啥CRuntimeClass要有个成员函数CreateObject()

类对象动态创建,为什么CRuntimeClass要有个成员函数CreateObject()?
有动态创建功能的类中的宏“DECLARE_DYNCREATE”“ 定义如下:

#define DECLARE_DYNCREATE(class_name) \
DECLARE_DYNAMIC(class_name) \
static CObject* PASCAL CreateObject();

就是说类里面有个CRuntimeClass结构(由DECLARE_DYNAMIC声明),这个CRuntimeClass是有个成员函数CreateObject()的。
除了这个之外,类里面还有个直接的CreateObject())函数。创建对象似乎就是由这个函数完成的。

那么CRuntimeClass下面的CreateObject是干啥用的?
------解决方案--------------------
windows对象创建的机制就是这样的
------解决方案--------------------
这个函数用来动态创建对象:
    CRuntimeClass* pRTCAlpha = RUNTIME_CLASS(CAlpha);
    CObject* pObj1 = pRTCAlpha->CreateObject();
------解决方案--------------------
找到一个帖子就是讨论这个问题的:http://bbs.csdn.net/topics/300093466
------解决方案--------------------
哪里看到?贴出代码?