Compilerfehler CS0449
Aktualisiert: November 2007
Fehlermeldung
Die class- oder struct-Einschränkung muss vor allen anderen Einschränkungen stehen
The 'class' or 'struct' constraint must come before any other constraints
Die Einschränkungen für einen Typparameter eines generischen Typs oder einer generischen Methode müssen in einer bestimmten Reihenfolge auftreten: class oder struct muss (falls vorhanden) an erster Stelle stehen, gefolgt von den Schnittstelleneinschränkungen und schließlich den Konstruktoreinschränkungen. Dieser Fehler wird dadurch verursacht, dass die class- oder struct-Einschränkung nicht an erster Stelle steht. Um diesen Fehler zu beheben, ordnen Sie die Einschränkungsklauseln neu an.
Beispiel
Im folgenden Beispiel wird CS0449 generiert.
// CS0449.cs
// compile with: /target:library
interface I {}
public class C4
{
public void F1<T>() where T : class, struct, I {} // CS0449
public void F2<T>() where T : I, struct {} // CS0449
public void F3<T>() where T : I, class {} // CS0449
// OK
public void F4<T>() where T : class {}
public void F5<T>() where T : struct {}
public void F6<T>() where T : I {}
}