private GenericClass<T> Test<T>(int i) where T : Base
{
if (i == 42)
{
return new GenericClass<Derived1>();
}
return new GenericClass<Derived2>();
}
같은 베이스 클래스를 가진 파생 클래스 두 가지가 있음
그걸 제네릭 클래스에 넣어서 리턴하고싶음
검색해보니 컴파일러는 일단 제네릭에 들어가면 뭐가 들어갔는지 모른다 같은 식으로 설명하던데
그럼 똑같은 일을 할 수 있는 다른 방법이 있음?
리플렉션
T1, T2 만들어서 where T1 : GenericClass<T2> where T2 : Base