C6001
Ostrzeżenie C6001: użycie niezainicjowanej pamięci <variable>
Ostrzeżenie to jest zgłaszane, gdy niezainicjowana zmienna lokalna zostanie użyta, zanim zostanie przypisana jej wartość.Może to prowadzić do nieoczekiwanych rezultatów.Należy zawsze inicjować zmienne przed użyciem.
Przykład
Poniższy kod generuje to ostrzeżenie, ponieważ zmienna i zostanie zainicjowana, tylko jeśli zmienna b ma wartość true; w przeciwnym razie, zwracana jest niezainicjowana zmienna i:
int f( bool b )
{
int i;
if ( b )
{
i = 0;
}
return i; // i is unintialized if b is false
}
Aby poprawić to ostrzeżenie, zainicjuj zmienną w sposób przedstawiony w poniższym kodzie:
int f( bool b )
{
int i= -1;
if ( b )
{
i = 0;
}
return i;
}