Excluir CObject::operador
Para a versão Release de biblioteca, operador Excluir libera a memória alocada pelo operador novo.
void PASCAL operator delete(
void* p
);
void PASCAL operator delete(
void* p,
void* pPlace
);
void PASCAL operator delete(
void* p,
LPCSTR lpszFileName,
int nLine
);
Comentários
Na versão de depurar, o operador Excluir participa de um esquema de alocação de monitoramento projetado para detectar vazamento de memória.
Se você usar a linha de código
#define new DEBUG_NEW
antes de qualquer uma das suas implementações em um arquivo .CPP e, em seguida, a terceira versão do Excluir será usado, armazenando o nome de arquivo e o número de linha no bloco de alocado para relatar posteriormente.Não é necessário se preocupar sobre fornecer parâmetros extras; uma macro cuida para você.
Mesmo se você não usa DEBUG_NEW no modo de depurar, você ainda receber detecção de vazamento, mas sem os relatórios de número de linha de arquivo de fonte descrito acima.
Se você substituir operadores novo and Excluir, você anular esse recurso de diagnóstico.
Exemplo
See CObList::CObList para obter uma lista do CAge usado na classe a CObject exemplos.
void CAge::operator delete(void* p)
{
free(p);
}
void CAge::operator delete(void *p, LPCSTR lpszFileName, int nLine)
{
UNREFERENCED_PARAMETER(lpszFileName);
UNREFERENCED_PARAMETER(nLine);
free(p);
}
Requisitos
Cabeçalho: afx.h