AfxDoForAllObjects
Executa a função de iteração especificado para todos os objetos derivados de CObject que foram alocados com nova.
void AfxDoForAllObjects(
void (*pfn
)(CObject* pObject,
void* pContext
),
void* pContext
);
Parâmetros
pfn
Aponta para uma função de iteração para executar para cada objeto.Os argumentos da função são um ponteiro para um CObject e um ponteiro nulo para dados extras que fornece o chamador da função.pContext
Pontos de dados opcionais que o chamador pode fornecer para a função de iteração.Esse ponteiro pode ser Nulo.
Comentários
Pilha, global, ou objetos incorporados não são enumerados.O ponteiro é passado para AfxDoForAllObjects em pContext é passado para a função de iteração especificado sempre que é chamado.
Observação |
---|
Essa função funciona apenas na versão de depuração do MFC. |
Exemplo
#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
Requisitos
Cabeçalho: Afx. h