Я немного читал об универсальной дисперсии и еще не совсем понял ее, но хотел бы знать, делает ли она что-то вроде возможно следующее?
class A<T> { }
class B { }
class C : B { }
class My1 {
public My1(A<B> lessDerivedTemplateParameter)
{
}
}
class My2 : My1 {
public My2(A<C> moreDerivedTemplateParameter)
: base(moreDerivedTemplateParameter) // <-- compile error here, cannot convert
{
}
}