Compilerfehler CS1059
Aktualisiert: November 2007
Fehlermeldung
Der Operand eines Inkrement- oder Dekrementoperators muss eine Variable, eine Eigenschaft oder ein Indexer sein.
The operand of an increment or decrement operator must be a variable, property or indexer.
Dieser Fehler wird ausgelöst, wenn Sie versuchen, einen Konstantenwert zu erhöhen oder zu verringern. Er kann auch auftreten, wenn Sie versuchen, einen Ausdruck wie (a+b)++ zu inkrementieren.
So beheben Sie diesen Fehler
Machen Sie aus der Variablen eine nicht konstante Variable.
Entfernen Sie den Inkrement-Operator bzw. den Dekrement-Operator.
Speichern Sie den Ausdruck in einer Variablen, und inkrementieren Sie dann die Variable.
Beispiel
Das folgende Beispiel führt zu Fehler CS1059, weil i eine Konstante und keine Variable ist und weil E ein Enum-Typ ist, dessen Elemente ebenfalls Konstantenwerte sind.
// 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
}
}