次のような汎用メソッドがあるとします。
void Fun<T>(FunArg arg) {}
ジェネリック メソッドの異なるインスタンス化はありますthis.Fun<Feature>
か?this.Fun<Category>
一般に、ジェネリック メソッドはどのようにインスタンス化されるのでしょうか? 異なるジェネリック引数が異なるメソッドを生成するか、実行時に使用される異なるメタデータとともに同じメソッドを生成しますか?
言語仕様からの引用で回答をサポートしてください。
また、私がこれらをしたとします:
client.SomeEvent += this.Fun<Feature>; //line1
client.SomeEvent += this.Fun<Category>; //line2
client.SomeEvent += this.Fun<Result>; //line3
その後、
client.SomeEvent -= this.Fun<Feature>; //lineX
lineX
で行ったことを元に戻しますline1
か? それとも他のものにも依存していますか?