AfxDoForAllClasses

调用任何可序列化 CObject的指定迭代函数 - 在应用程序的内存空间的派生类。

void AFXAPI AfxDoForAllClasses(
   void (*pfn
)(const CRuntimeClass* pClass,
   void* pContext
),
   void* pContext 
); 

参数

  • pfn
    指向为每类将调用的迭代函数。 函数参数是指针传递给 CRuntimeClass 对象和一个无效指针调用方提供给函数的额外数据。

  • pContext
    指向调用方可以提供给迭代函数的可选数据。 此指针可以是 NULL

备注

可序列化 CObject派生类是使用 DECLARE_SERIAL 宏派生的类。 通过在 pContext 的 AfxDoForAllClasses 的指针传递给每次调用指定的迭代函数。

备注

此函数在 MFC 的调试版本只工作。

示例

#ifdef _DEBUG
void DoForAllClasses(const CRuntimeClass* pClass, void* pContext)
{
   ASSERT(pContext != NULL);
   CString *pStr = (CString *)pContext;

   *pStr += pClass->m_lpszClassName;
   *pStr += _T("\n");
}
#endif
#ifdef _DEBUG
   CString cStr;
   AfxDoForAllClasses(DoForAllClasses, &cStr);
   AfxMessageBox(cStr);
#endif

要求

Header: afx.h

请参见

参考

DECLARE_SERIAL

概念

MFC宏和Globals