C6283
Aviso C6283: <variable> é alocada com [novo] array, mas excluída com delete escalar
Esse aviso aparece somente no código C++ e indica que a função de chamada inconsistentemente alocou memória com a matriz new [] operador, mas o liberado com a scalar delete operador.Esse defeito pode causar vazamentos de corrupções de memória e, em situações onde operadores tem sido substituídos, travamentos.Se a memória é alocada com matriz new [], normalmente deve ser liberada com matriz delete[].
Exemplo
O código a seguir gera este aviso:
void f( )
{
char *str = new char[50];
// code ...
delete str;
}
Para corrigir esse aviso, use o código a seguir:
void f( )
{
char *str = new char[50];
// code ...
delete[] str;
}
Aviso C6283 se aplica somente a matrizes de tipos primitivos como números inteiros ou caracteres.Se os elementos da matriz são objetos da classe digite aviso, em seguida, C6278 é emitido.