Поделиться через


C6001

Обновлен: Ноябрь 2007

C6001

Предупреждение C6001: использование неинициализированной памяти <переменная>

Это предупреждение возникает, когда локальная переменная используется до того, как ей присваивается значение. Это может привести к непредсказуемым результатом. Переменные всегда следует инициализировать перед использованием.

Пример

Это предупреждение возникает в следующем примере кода, поскольку переменная i инициализируется только в случае, если b имеет значение true, в противном случае i возвращается без инициализации.

int f( bool b )
{
   int i;
   if ( b )
   {
      i = 0;
   }
   return i; // i is unintialized if b is false
}

Чтобы исправить это предупреждение, нужно инициализировать переменную, как показано в следующем примере кода.

int f( bool b )
{
   int i= -1;

   if ( b )
   {
      i = 0;
   }
   return i;
}

См. также

Ссылки

Предупреждение компилятора (уровень 1 и уровень 4) C4700

Предупреждение компилятора (уровень 4) C4701