次の方法で共有


'Structure' 制約が指定された型パラメーターを制約として使用することはできません

Structure 制約が指定された型パラメーターが、別の型パラメーターの制約として使用されています。

Structure 制約では、その型パラメーターに渡される型引数が値型であることが要求されます。 ただし、値型を実装または継承することはできないため、型パラメーターを制約として使用しても意味はなく、他の型パラメーターに対し、実装または継承を要求することになります。

このことは、両方の型引数がまったく同じ型の場合にのみ意味があります。 この場合、ジェネリック型に型パラメーターは 1 つのみ必要となります。

次のステートメントでは、このエラーが生成される可能性があります。

Class c1(Of t1 As Structure, t2 As t1)

t2 に渡される型は値型である必要があるため、 t1に渡される型は、 t1 に渡される型を実装または継承できません。

エラー ID: BC32114

このエラーを解決するには

  • Structure に制限された型パラメーターを、他の型パラメーターの制約リストから削除します。

  • 両方の型パラメーターに同じ値型が必要な場合は、1 つの型パラメーターのみを持つジェネリック型を定義します。

関連項目