Поделиться через


AfxDoForAllClasses

Вызывает заданную функцию итерации для всех сериализуемых CObject- производные классы в области памяти приложения.

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

Параметры

  • pfn
    Указывает на функцию итерации, вызываемый для каждого класса.Аргументы функции указатель на объект CRuntimeClass и пустой указатель на дополнительным данным разделах предоставляет вызывающего объекта в функции.

  • pContext
    К дополнительным данным указывает, что вызывающий может указывать на функцию итерации.Данный указатель может быть NULL.

Заметки

Сериализуемый CObject- производные классы классы, производные DECLARE_SERIAL использование макроса.Указатель, который передается в AfxDoForAllClasses в pContext передается в заданной функции итерации при каждом вызове.

ПримечаниеПримечание

Эта функция работает только в отладочной версии 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