У меня есть вопрос о дженериков и использование интерфейсов отданных при создании Concret классов:Общий интерфейс ограничение
namespace MyNamespace
{
interface ITest
{
}
class Timpl : ITest
{
}
class Test<T> where T : ITest
{
public T get()
{
return default(T);
}
}
class MyClass
{
public MyClass()
{
Test<ITest> s = new Test<Timpl>(); //Does not compile
}
}
}
Я читал на ко- и контравариантных, но я должен быть что-то отсутствует, или это не имеет ничего делать то, что я пытаюсь, или просто не работает то, что я пытаюсь сделать.
Хотя я мог бы сделать актерский состав от Test to Test, потому что TImple наследуется от ITest.
Вы не нашли какой-либо из предоставленных ответов полезные? Не забудьте отметить его как принятый, проверив зеленую метку ниже ответа. –