Это не законно:Есть ли элегантный способ создания переменной типа с параметрами?
public class MyBaseClass
{
public MyBaseClass() {}
public MyBaseClass(object arg) {}
}
public void ThisIsANoNo<T>() where T : MyBaseClass
{
T foo = new T("whoops!");
}
Для того, чтобы сделать это, вы должны сделать некоторые размышления на объект типа для T или вы должны использовать Activator.CreateInstance. Оба довольно неприятные. Есть ли способ лучше?
не в общем виде. – 2008-09-18 20:57:12