Compartir a través de


Error del compilador CS1059

Actualización: noviembre 2007

Mensaje de error

El operando de un operador de incremento o decremento debe ser una variable, una propiedad o un indizador.
The operand of an increment or decrement operator must be a variable, property or indexer.

Este error se produce al intentar incrementar o reducir un valor constante. También puede producirse si intenta incrementar una expresión como (a+b)++.

Para corregir este error

  • Haga que la variable no sea de tipo const.

  • Quite el operador de incremento o decremento.

  • Almacene la expresión en una variable y, a continuación, incremente la variable.

Ejemplo

El ejemplo siguiente genera el error CS1059 porque i es una constante, no una variable, y E es un tipo Enum cuyos elementos son también valores constantes.

// 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
        }
    }

Vea también

Referencia

Constantes (Guía de programación de C#)