個人觀點: 如果拿雞蛋作爲一個類,那麼可以把雞蛋打碎,可以看到裏面什麼東西;如果把裏面什麼東西告訴你,能還原成一個雞蛋麼?這就是動態生成要做的吧
#define DECLARE_DYNCREATE(class_name) /
DECLARE_DYNAMIC(class_name) /
static CObject* PASCAL CreateObject();
CObject* CRuntimeClass::CreateObject()
{
if (m_pfnCreateObject == NULL)
{
TRACE(_T("Error: Trying to create object which is not ")
_T("DECLARE_DYNCREATE /nor DECLARE_SERIAL: %hs./n"),
m_lpszClassName);
return NULL;
}
CObject* pObject = NULL;
TRY
{
pObject = (*m_pfnCreateObject)();
}
END_TRY
return pObject;
}
有了RTTI ,(*m_pfnCreateObject)() 便可以返回正確的類指針。
//////////////////////////////////////
下雨了,收衣服了。
未解決.
石頭
2006/08/10