0

为什么在下面的代码中是C<B> 不可转换为的实例C<A<int>>,即使B 派生A<int>,即使具有协变Tin IC<out T>

void Main()
{
    var b = new B();
    var c = new C<B>();
    _ = (C<A<int>>)c;
}

class A<T> {
}

class B : A<int> {
}

interface IC<out T> { }

class C<T> : IC<T> {
}
4

0 回答 0