これを仮定します:
public class GenericMethods
{
public T Method<T>() where T : struct
{
// Do something specific to a struct
}
public T Method<T>() where T : class
{
// Do something specific to a class
}
}
2 つのメソッドが同じパラメーターを取るため、コンパイル時に何らかの形で無効になります。しかし、制約が相互に排他的であるため、2 つの方法が衝突する瞬間が本当にあるのでしょうか? T を解決しているときに、ソフトウェアが 2 つの方法のいずれかを選択できない可能性はありますか?
ジェネリック型が構造体またはクラスである場合に異なる、同じ名前とパラメーターの 2 つのジェネリック メソッドを作成するにはどうすればよいでしょうか?