Freigeben über


AfxDoForAllObjects

Führt die angegebene Iterationsfunktion für alle Objekte, die von CObject abgeleitet werden, die mit neu zugeordnet wurden.

void AfxDoForAllObjects( 
   void (*pfn 
)(CObject* pObject, 
   void* pContext 
), 
   void* pContext  
);

Parameter

  • pfn
    Punkte zu einer Iterationsfunktion, um für jedes Objekt auszuführen. Die Argumente sind ein Zeiger auf CObject 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

Stapel, global oder eingebettete Objekte werden nicht aufgelistet. Der Zeiger, der von AfxDoForAllObjects in pContext übergeben wird, wird der angegebenen Iterationsfunktion übergeben, wenn sie aufgerufen wird.

Hinweis

Diese Funktion funktioniert nur in der Debugversion von MFC.

Beispiel

#ifdef _DEBUG
void DoForAllObjects(CObject* pObject, void* pContext)
{
   int *pnCount = (int*)pContext;

   pObject->AssertValid();
   if (pnCount != NULL)
      (*pnCount)++;
}
#endif // _DEBUG
#ifdef _DEBUG
   //AfxDoForAllObjects will call the function DoForAllObjects  
   //For each CObject-derived object that is allocated on the heap 
   int nCount = 0;
   AfxDoForAllObjects(DoForAllObjects, &nCount);
   TRACE("%d Objects Checked\n", nCount);
#endif

Anforderungen

Header: afx.h

Siehe auch

Konzepte

MFC-Makros, globale Funktionen und globale Variablen