다른 형식의 인스턴스를 만들 수있는 동적 메서드를 만들었지 만 위에서 설명한 오류가 컴파일 타임에 발생하는 이유를 모르거나 지정된 형식으로 반환 값을 다시 캐스팅해야합니까? ?GetInstance <T>() '을 사용에서 유추 할 수 없습니다. 명시 적으로 형식 인수를 지정하십시오.
internal static T GetInstance<T>() where T:new()
{
return new T();
}
이
http://msdn.microsoft.com/en-us/library/0hcyx2kd.aspx
편집이 :
비록, 내가 왜 이해하지
internal static T GetInstance<T>()
{
dynamic obj = Activator.CreateInstance(typeof(T));
return obj;
}
private Foo f = GetInstance<Foo>();
왜 '동적'입니까? 당신은 아마도'return (T) Activator.CreateInstance (typeof (T));'가 필요 하겠지요. 그러나 함수에서 오는 에러는 어디입니까? 그것을 부르는 선? – Rup
좋은 질문, 실제로 다른 속성을 설정해야합니다. – BreakHead
그리고 컴파일시 오류가 발생합니다 – BreakHead