c#非静态结构成员不能有初始化式

本文关键字:初始化 不能 成员 静态 结构 | 更新日期: 2023-09-27 18:14:51

屏幕上出现错误的原因是什么?

public struct  YetkiYapisiListesi
{
    public bool STOKGUNCELLE =false ;
    public bool STOKSIL=false;
    public bool STOKLISTELE=false;
}

非静态结构成员不能有初始化式

c#非静态结构成员不能有初始化式

c#不允许struct有初始化器,原因以前有过争论,见这里:(为什么我不能在我的结构中初始化我的字段?)

只需从您的字段声明中删除= false部分。

请注意,Boolean字段默认为false,使您的分配完全没有必要。

如果你绝对需要将字段初始化为非默认值,那么你仍然可以定义一个额外的构造函数来设置这些值,但是它不能是默认的(无参数的)构造函数。另一种选择是使用静态工厂方法。

不能在Struct上初始化字段。

你将得到相同的结果,即使你提交初始化:

public bool STOKGUNCELLE;
public bool STOKSIL;
public bool STOKLISTELE;
public bool STOKHAREKET;

因为bool默认值为false