加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何定义包含整数作为值的C#枚举?

发布时间:2020-12-16 00:24:09 所属栏目:百科 来源:网络整理
导读:我正在设计一个需要“位置”字段的应用程序.该位置的值是“3241”,“4112”,“ND”和“TRAVEL”,我正在尝试设置包含这些值的枚举. 我开始了 enum projectLocation {3241,4112,ND,TRAVEL}; 但值3241和4112表示枚举中第一个值的语法错误 – 预期的标识符.如果
我正在设计一个需要“位置”字段的应用程序.该位置的值是“3241”,“4112”,“ND”和“TRAVEL”,我正在尝试设置包含这些值的枚举.

我开始了

enum projectLocation {3241,4112,ND,TRAVEL};

但值3241和4112表示枚举中第一个值的语法错误 – 预期的标识符.如果我正确理解枚举,那是因为上面的语句正在寻找枚举的整数indeces为3241和4112的值.这是正确的假设吗?

我尝试用以下内容覆盖它

enum projectLocation {3241=0,TRAVEL};

enum projectLocation {3241=0,4112=1,ND=2,TRAVEL=3};

但我仍然在3241值上得到相同的语法错误.有趣的是,在这两个语句中,4112上没有语法错误,但我找不到命名空间或名称ND和… TRAVEL

有意义的是,枚举不允许混合使用字符串和整数,并且我有两个其他枚举工作正常并且只是字符串值的列表,证实了这个理论.有没有办法强制枚举接受数值作为字符串?我无法在MSDNs C#文档中找到任何引用.

解决方法

枚举被称为命名常量,所以基本上你给一些常量命名.名称是c#中的“标识符”,其中标识符可以包含数字,但第一个字符不能是数字.

您可以在此之前添加_以修复此错误.

enum projectLocation 
{
    _3241=0,_4112=1,TRAVEL=3
}

另请注意字段,属性方法或上述此标识符规则下的任何内容.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读