2
と同じインターフェイスを持つ型を返すことができません。機能は、私は簡単なプログラムを持って戻り値の型
Aのインスタンスは下駄から返すことができないのはなぜclass Program
{
static void Main(string[] args)
{
InA testing = GetA();
}
static InA GetA<InA>()
{
return new A();
}
}
public interface InA
{
void test();
}
public class A : InA
{
public void test()
{
throw new NotImplementedException();
}
}
()? AはInAインターフェイスを実装します。
「GetA」とは何ですか?つまり、メソッドの範囲では、 'InA'はインタフェースではなくジェネリック型を指します。慣例として、インタフェースが文字 'I'で始まるのと同じように、すべてのジェネリック型は 'TVal 'のように文字' T 'で始めるべきです。そうすれば、あなたが扱っていることは明らかです。 –
spender