无法存储类数组

时间:2011-03-17 14:59:46

标签: c# class types

我正在尝试存储一组我可以稍后初始化的类。我想这样做:

Type[] x = { className };

但是,我收到以下错误:

  

'myNamespace.className'是'type',但它用作'variable'

任何指导都将不胜感激。

1 个答案:

答案 0 :(得分:5)

使用typeof运算符,该运算符用于获取类型的System.Type

Type[] x = { typeof(className) };

编辑:

回复您的评论:要从System.Type创建该类型的实例,请使用Activator.CreateInstance方法的适当重载。

E.g。

Type t = typeof(int);

// Boxed Int32 with value 0
object o = Activator.CreateInstance(t);

在您的情况下,由于您知道类的基类型,因此您当然可以将返回值强制转换为基类型。