Freigeben über


AfxDoForAllClasses

Ruft die angegebene Iterationsfunktion für alle serialisierbaren CObject abgeleiteten Klassen im Speicherplatz der Anwendung auf.

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

Parameter

  • pfn
    Punkte auf eine für jede Klasse aufgerufen werden Iterationsfunktion. Die Argumente sind ein Zeiger auf ein CRuntimeClass-Objekt und ein void-Zeiger zu zusätzlichen Daten, die der Aufrufer an die Funktion bietet.

  • pContext
    Zeigt auf optionale Daten, die der Aufrufer an die Iterationsfunktion stellen kann. Dieser Zeiger kann NULL sein.

Hinweise

Serialisierbares CObject abgeleitete Klassen sind Klassen, die mithilfe des Makros DECLARE_SERIAL abgeleitet werden. Der Zeiger, der von AfxDoForAllClasses in pContext übergeben wird, wird der angegebenen Iterationsfunktion übergeben, jedes Mal, das sie aufgerufen wird.

Hinweis

Diese Funktion funktioniert nur in der Debugversion von MFC.

Beispiel

#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

Anforderungen

Header: afx.h

Siehe auch

Referenz

DECLARE_SERIAL

Konzepte

MFC-Makros, globale Funktionen und globale Variablen