屏幕上出现错误的原因是什么?
public struct YetkiYapisiListesi
{
public bool STOKGUNCELLE =false ;
public bool STOKSIL=false;
public bool STOKLISTELE=false;
}
非静态struct成员不能有初始值设定项
答案 0 :(得分:1)
C#不允许struct
拥有初始值设定项,之前已经讨论过的原因,请参见此处:(Why can't I initialize my fields in my structs?)
只需从字段声明中删除= false
部分即可。
请注意,默认情况下,Boolean
字段为false
,因此您的作业完全没必要。
如果您绝对需要将字段初始化为非默认值,那么您仍然可以定义另一个设置这些值的构造函数,但它不能是默认(无参数)构造函数。另一种选择是使用静态工厂方法。
答案 1 :(得分:1)
您无法在Struct上初始化字段。
即使您省略初始化,您也会得到相同的结果:
public bool STOKGUNCELLE;
public bool STOKSIL;
public bool STOKLISTELE;
public bool STOKHAREKET;
因为 bool默认值为false 。