本文主要是介绍基于MFC的RuntimeClass的方法。
(1) 首先创建一个基类 :CMyBase : public CObject 这个类基于CObject。
在这个类的头文件中,加入“DECLARE_DYNAMIC(CMyBase)”
在CPP文件中,加入“IMPLEMENT_DYNAMIC(CMyBase, CObject );”
(2) 创建执行类: CMyAgent_A : public CMyBase, 基类为CMyBase.
并在头文件中加入“DECLARE_SERIAL(CMyAgent)” ,
在CPP文件中加入“IMPLEMENT_SERIAL( CMyAgent, CMyBase, 100);”
(3) 重复步骤2,创建多个基于CMyBase的派生类。
(4) 生成具体的对象:
CMyBase *pAgent = (CMyBase *)
CRuntimeClass::CreateObject( "CMyAgent_A" );