내 기본 클래스는 파생 클래스에서 리플렉션을 사용하여 일부 기능을 제공합니다. 현재 저는 이렇게하고 있습니다 :제네릭없이 기본 클래스에서 파생 클래스의 형식을 얻는 방법?
abstract class BaseClass<T>
{
string GetClassString()
{
// Iterate through derived class, and play with it's properties
// So I need to know the type of derived class (here T).
return result;
}
static bool TryParse(string classString, out T result)
{
// I should declare a variable as T and return it
}
}
제네릭없이 이것을 할 수 있습니까?
'T' *는 파생 클래스의 유형이 아니거나 적어도 반드시 필요하지는 않습니다. 'class MyDerivedClass : BaseClass'을 상상해 보라. 여기서 파생 클래스는'MyDerivedClass'이지만'T'는'string'입니다. –
@ 존 : 그렇다면'TryParse (string classString, out T derivedType) '을 어떻게 선언할까요? 'C#'는 메소드 서명에서'derivedType'을 동적으로 정의하고'T'를 사용하지 않습니까? – Xaqron