AfxDoForAllObjects
Visual Studio 2005
Executes the specified iteration function for all objects derived from CObject that have been allocated with new.
void AfxDoForAllObjects( void (*pfn )(CObject* pObject, void* pContext ), void* pContext );
Parameters
- pfn
-
Points to an iteration function to execute for each object. The function arguments are a pointer to a CObject and a void pointer to extra data that the caller supplies to the function.
- pContext
-
Points to optional data that the caller can supply to the iteration function. This pointer can be NULL.
#ifdef _DEBUG
void DoForAllObjects(CObject* pObject, void* pContext)
{
int *pnCount = (int *) pContext;
pObject->AssertValid();
if (pnCount != NULL)
(*pnCount)++;
}
#endif // _DEBUG
//AfxDoForAllObjects will call the function DoForAllObjects
//For each CObject-derived object that allocated on the heap
int nCount = 0;
AfxDoForAllObjects( DoForAllObjects, &nCount );
TRACE("%d Objects Checked\n", nCount);
Note