Compartilhar via


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çãoObservaçã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

Consulte também

Conceitos

Globais e Macros do MFC