Číst v angličtině

Sdílet prostřednictvím


Chyba kompilátoru CS1059

Operand operátoru přírůstku nebo dekrementace musí být proměnná, vlastnost nebo indexer.

Tato chyba se vyvolá při pokusu o zvýšení nebo snížení konstantní hodnoty. Může dojít také v případě, že se pokusíte zvýšit výraz, například (a+b)++.

Oprava této chyby

  • Nastavte proměnnou jako nekontovou.

  • Odeberte operátor inkrementace nebo dekrementace.

  • Uložte výraz do proměnné a potom proměnnou navyšte.

Příklad

Následující příklad generuje CS1059, protože i je konstanta, nikoli proměnná, a E je Enum typ, jehož prvky jsou také konstantní hodnoty.

C#
// CS1059.cs  
    class Program  
    {  
        public enum E : sbyte  
        {  
            a = 1,  
            b = 2  
        }  
  
        static void Main(string[] args)  
        {  
            const int i = 0;  
            i++;            // CS1059  
            E test = E.a++; // CS1059  
        }  
    }  

Viz také