CObject::GetRuntimeClass

返回 CRuntimeClass 结构与此对象类相对应。

virtual CRuntimeClass* GetRuntimeClass( ) const;

返回值

CRuntimeClass 结构的指针与此对象类相对应;不 NULL

备注

对于每 CObject的一 CRuntimeClass 结构派生类。 结构成员如下所示:

  • 包含ASCII类名的LPCSTR m_lpszClassName 一个Null终止的字符串。

  • int m_nObjectSize 对象的大小,以字节为单位)。 如果对象有指向分配的内存的数据成员,则该内存大小不包括在内。

  • UINT m_wSchema 模式号(– 1该选件类)。 对模式数字的声明参见 IMPLEMENT_SERIAL 宏。

  • CObject* ( PASCAL* m_pfnCreateObject )( ) 来创建自己的选件类对象的默认构造函数的函数指针(有效,仅当选件类支持动态创建;否则,返回 NULL)。

  • CRuntimeClass* ( PASCAL* m_pfn_GetBaseClass )( ),如果应用程序使用MFC的AFXDLL版本动态链接,对返回基类的 CRuntimeClass 结构的函数的指针。

  • CRuntimeClass* m_pBaseClass,如果您的应用程序与静态链接到MFC,对基类的 CRuntimeClass 结构的指针。

此功能需要对选件类实现的 IMPLEMENT_DYNAMICIMPLEMENT_DYNCREATEIMPLEMENT_SERIAL 宏的使用。 您否则将收到错误的结果。

示例

提供用于所有 CObject 示例的列表 CAge 选件类参见 CObList::CObList

CAge a(21);
CRuntimeClass* prt = a.GetRuntimeClass();
ASSERT(strcmp(prt->m_lpszClassName, "CAge")  == 0);   

要求

Header: afx.h

请参见

参考

CObject Class

层次结构图

CObject::IsKindOf

RUNTIME_CLASS