这可能吗?
当一个类型被传递给一个方法时,我想实例化泛型类myClass
public class myClass<T>
{
}
public void PassInType(Type myType)
{
myClass<myType> c=new myClass<myType>();
}
更新
好的,因为那是不可能的,我该怎么做
public myMethod(string myType)
{
myClass<myType> c=new myClass<myType>();
}
答案 0 :(得分:5)
没有;这基本上是不可能的。
泛型的全部意义在于它们创建编译时类型 您正在尝试创建一个在编译时未知的类型。
但是你可以使用反射来做到这一点。 (typeof(MyClass<>).MakeGenericType(myType)
)