Udostępnij za pośrednictwem


Ostrzeżenie kompilatora (poziom 3) CS0219

Zmienna "zmienna" jest przypisana, ale jej wartość nigdy nie jest używana

Kompilator wystawia ostrzeżenie na poziomie trzech, gdy deklarujesz i przypisujesz zmienną, ale nie używasz jej.

Uwaga

Kompilator generuje to ostrzeżenie tylko wtedy, gdy wartość zmiennej jest stałą czasu kompilacji. Przypisanie wyrażenia innego niż stała lub wynik metody do zmiennej lokalnej ułatwia obserwowanie tych wyrażeń w debugerze. Sprawia to również, że wynik jest osiągalny, uniemożliwiając odzyskiwanie pamięci, podczas gdy ta zmienna jest osiągalna.

Poniższy przykład przedstawia przypadki, w których i kiedy nie jest generowane ostrzeżenie:

// CS0219.cs
// compile with: /W:3
public class MyClass
{
   public static void Main()
   {
      var interpolated = "Interpolated";
      var a = 0; // CS0219
      int b = GetZero(); // Doesn't generate a warning.
      var c = "Regular string"; // CS0219
      var d = $"Constant interpolated string"; // Doesn't generate a warning.
      var e = $"{interpolated} string"; // Doesn't generate a warning.
   }

   private static int GetZero()
   {
       return 0;
   }
}