Compilerfehler CS0201

Nur „assignment-“, „call-“, „increment-“, „decrement-“ und „new object“-Ausdrücke können als Anweisung verwendet werden.

Der Compiler generiert einen Fehler, wenn er auf eine ungültige Anweisung stößt. Als ungültige Anweisung wird jede auf einen Semikolon endende Zeile oder Reihe von Zeilen bezeichnet, die keine Zuweisung (=), keinen Methodenaufruf () und kein Vorgang mit new, -- oder ++ darstellt. Weitere Informationen finden Sie unter Anweisungen und Operatoren und Ausdrücke.

Beispiel 1

Im folgenden Beispiel wird CS0201 generiert, da 2 * 3 ein Ausdruck und keine Anweisung ist. Um den Code erfolgreich zu kompilieren, versuchen Sie, den Wert des Ausdrucks einer Variablen zuzuweisen.

// CS0201.cs  
public class MainClass  
{  
   public static void Main()  
   {  
      2 * 3;   // CS0201  
      // Try the following line instead.  
      //   int i = 2 * 3;  
   }  
}  

Beispiel 2

Im folgenden Beispiel wird CS0201 generiert, da „checked“ zwar durch eine Inkrementoperation parametrisiert wird, aber an sich keine Anweisung ist.

// CS0201_b.cs  
// compile with: /target:library  
public class MyList<T>
{  
   public void Add(T x)  
   {  
      int i = 0;  
      if ( (object)x == null)  
      {  
         checked(i++);   // CS0201  
  
         // OK  
         checked {  
            i++;
         }  
      }  
   }  
}  

Weitere Informationen