Compartilhar via


DEBUG_NEW

Ajuda a localizar vazamentos de memória.

#define new DEBUG_NEW 

Comentários

Você pode usar DEBUG_NEW em qualquer lugar no programa que você normalmente usaria o nova operador para alocar o armazenamento de heap.

No modo de depuração (quando o Debug símbolo é definido), DEBUG_NEW mantém o controle do número de nome de arquivo e de linha para cada objeto que ele aloca.Em seguida, quando você usa o CMemoryState::DumpAllObjectsSince função de membro, cada objeto alocado com DEBUG_NEW é mostrado com o nome do arquivo e linha número onde foi alocado.

Usar DEBUG_NEW, inserir a seguinte diretiva em seus arquivos de origem:

#define new DEBUG_NEW

Depois de inserir essa diretiva, o pré-processador irá inserir DEBUG_NEW onde quer que você use nova, e MFC faz o resto.Quando você compilar uma versão do programa, DEBUG_NEW resolve para um simples nova operação e as informações de nome de arquivo e linha número não são gerados.

ObservaçãoObservação

Em versões anteriores do MFC (4.1 e anterior) necessário para colocar o #define instrução após todas as instruções que chamou o IMPLEMENT_DYNCREATE ou IMPLEMENT_SERIAL macros.Isso não é mais necessário.

Requisitos

Cabeçalho: Afx. h

Consulte também

Conceitos

Globais e Macros do MFC

Outros recursos

MFC Debugging Techniques