【发布时间】:2011-09-17 11:18:24
【问题描述】:
class Bus<T>
{
static Bus()
{
foreach(FieldInfo fi in typeof(T).GetFields())
{
if(fi.FieldType == typeof(Argument))
{
fi.SetValue(typeof(T), new Argument("busyname", "busyvalue"));
}
}
}
}
class Buss : Bus<Buss>
{
public static Argument field;
}
任何想法如何使这项工作,以便对 Buss 中的静态字段的引用触发 Bus 中的静态构造函数?
【问题讨论】:
-
为什么是静态构造函数?静态构造函数用于初始化任何静态数据,或执行只需要执行一次的特定操作。
-
'field' 是静态数据,只需要初始化一次,因此是静态构造函数。
标签: c# inheritance static-constructor