Udostępnij przez


Ostrzeżenie kompilatora (poziom 3 i poziom 4) C4101

'identifier': unreferenced local variable (identyfikator): nieużywana zmienna lokalna

Uwagi

Zmienna lokalna nigdy nie jest używana.

Przykłady

To ostrzeżenie występuje w oczywistej sytuacji:

// C4101a.cpp
// compile with: /W3
int main() {
int i;   // C4101
}

To ostrzeżenie występuje jednak również podczas wywoływania funkcji składowej static za pośrednictwem wystąpienia klasy:

// C4101b.cpp
// compile with:  /W3
struct S {
   static int func()
   {
      return 1;
   }
};

int main() {
   S si;   // C4101, si is never used
   int y = si.func();
   return y;
}

W takiej sytuacji kompilator używa informacji o si uzyskiwaniu static dostępu do funkcji, ale wystąpienie klasy nie jest potrzebne do wywołania static funkcji, stąd ostrzeżenie. Aby rozwiązać to ostrzeżenie, możesz:

  • Dodaj konstruktor, w którym kompilator będzie używać wystąpienia si klasy w wywołaniu metody .func

  • static Usuń słowo kluczowe z definicji .func

  • Wywołaj static funkcję jawnie: int y = S::func();.