AfxDoForAllObjects
Exécute la fonction d'itération spécifiée pour tous les objets dérivés d'CObject qui ont été allouée à new.
void AfxDoForAllObjects(
void (*pfn
)(CObject* pObject,
void* pContext
),
void* pContext
);
Paramètres
pfn
Pointe sur une fonction d'itération à exécuter pour chaque objet. Les arguments de fonction sont pointeur vers CObject et un pointeur void aux données supplémentaires que l'appelant de la fonction.pContext
Points de données facultatives que l'appelant peut fournir à la fonction d'itération. Ce pointeur peut être NULL.
Notes
La pile, globale, ou les objets imbriqués ne sont pas énumérés. Le pointeur passé à AfxDoForAllObjects dans pContext est passé à la fonction d'itération spécifiée chaque fois qu'elle est appelée.
Notes
Cette fonction ne fonctionne que dans la version de débogage de MFC.
Exemple
#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
Configuration requise
En-tête : afx.h