排他的と思われるさまざまな制約を持つメソッドのオーバーロードに関する問題に遭遇しました。それが私の例です:
public class A
{
public void Do<T>() where T : class
{
}
public void Do<T>() where T : struct
{
}
}
そして、これは次のエラー「同じ署名を持つメンバーが既に定義されています」でコンパイルされません。両方の条件を同時に満たすことは可能ですか、それとも C# コンパイラの制限ですか?