正如您在这里看到的,我正在尝试将一个通用类实例分配给另一个来自不同类型T
的通用类实例,但是B
继承自A
。
我的逻辑说必须能够做到,也许我遗漏了一些东西。
abstract class A
{
}
class B : A
{
}
class C<T> where T : A
{
}
static void Main(string[] args)
{
C<A> class1;
C<B> class2;
class1 = class2;
}
答案 0 :(得分:-1)
不可能,只有隐式强制转换
public static implicit operator C<T>(C<B> v)
{
}