当我输入代码时:
label[] label_array = {label1, label2};
在函数内部,它工作得很好。每当我把它放在其他任何地方,我得到错误“字段初始值设定项不能引用非静态字段,方法或属性,file.form1.label1”
我是否可以通过不同的方式将标签数组设为全局?
答案 0 :(得分:4)
你不能在课堂上写这个,因为当变量初始化运行时那些标签还不存在。如果你想在类级别变量,只需在那里声明:
label[] label_array;
然后在构造函数(或像Init
函数之类的其他函数中)初始化它:
private void Init()
{
label_array = new label[2] {label1, label2};
}
答案 1 :(得分:2)
我猜你的意思是 anyhwere else 的类级别,如果你想让它成为类级变量,你可以在类级别声明你的数组然后在一个方法中初始化它,例如在构造函数。
C#
没有全局变量,类级别是变量可以具有的最大范围。