【发布时间】:2011-07-17 11:37:26
【问题描述】:
我正在尝试存储稍后可以初始化的类数组。我正在尝试这样做:
Type[] x = { className };
但是,我收到以下错误:
'myNamespace.className' 是一个“类型”,但它被用作一个“变量”
任何指导将不胜感激。
【问题讨论】:
我正在尝试存储稍后可以初始化的类数组。我正在尝试这样做:
Type[] x = { className };
但是,我收到以下错误:
'myNamespace.className' 是一个“类型”,但它被用作一个“变量”
任何指导将不胜感激。
【问题讨论】:
使用typeof 运算符,用于获取类型的System.Type。
Type[] x = { typeof(className) };
编辑:
响应您的评论:要从 System.Type 创建类型的实例,请使用 Activator.CreateInstance 方法的适当重载。
例如
Type t = typeof(int);
// Boxed Int32 with value 0
object o = Activator.CreateInstance(t);
在你的情况下,既然你知道类的基类型,你当然可以将返回值转换为基类型。
【讨论】: