Ce n'est pas légal:Existe-t-il un moyen élégant d'instancier un type de variable avec des paramètres?
public class MyBaseClass
{
public MyBaseClass() {}
public MyBaseClass(object arg) {}
}
public void ThisIsANoNo<T>() where T : MyBaseClass
{
T foo = new T("whoops!");
}
Pour ce faire, vous devez faire une réflexion sur l'objet de type T ou vous devez utiliser Activator.CreateInstance. Les deux sont plutôt méchants. Y a-t-il un meilleur moyen?
pas de manière générique. –