英語で読む

次の方法で共有


コンパイラ エラー CS0406

クラス型制約 'constraint' は、他の制約の前に指定する必要があります

ジェネリック型またはメソッドにクラス型の制約がある場合、その制約がリストの先頭に配置されている必要があります。 このエラーを回避するには、クラス型の制約を制約リストの先頭に移動します。

次の例では CS0406 が生成されます。

// CS0406.cs  
// compile with: /target:library  
interface I {}  
class C {}  
class D<T> where T : I, C {}   // CS0406  
class D2<T> where T : C, I {}   // OK