Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
C28198 de aviso: Possivelmente vazamento de memória devido a uma exceção.
Este aviso indica que a memória alocada não está sendo liberada após uma exceção é gerada.A instrução no final do caminho pode lançar uma exceção.A memória foi passada para uma função que pode ter uma cópia salvo a ser liberada posteriormente.
Esse aviso é muito semelhante ao aviso C28197.As anotações que são recomendadas para uso com aviso de C28197 também podem ser usadas aqui.
Exemplo
O exemplo de código gera este aviso:
char *p1 = new char[10];
char *p2 = new char[10];
test(p1); // does not save a copy of p
delete[] p2;
delete[] p1;
O exemplo de código a seguir evita este aviso:
char *p1 = new char[10];
char *p2 = NULL;
test(p1); // does not save a copy of p
try {
p2 = new char[10];
} catch (std::bad_alloc *e) {
// just handle the throw
;
}