c# – 使用int作为枚举有什么意义

为什么很多人都这样做:
public enum EmployeeRole
{
  None = 0,Manager = 1,Admin = 2,Operator = 3
}

而不只是做:

public enum EmployeeRole
{
  None,Manager,Admin,Operator
}

有优势吗?

解决方法

Are there advantages?

可维护性.假设这些整数值最终持久存储在数据库中.您不希望将来向枚举添加新值,并且值会更改,因为您以改变未指定值的方式插入值.

明晰.显性是一件好事.让我们再说一遍,我们从一些遗留应用程序中读取数据库中的整数.因此代码已经具有特定含义,我们希望明确地与它们对齐.我们可以说

public enum EmployeeRole {
    None,Operator
}

也许这与传统规范完全一致,或者我们可以说

public enum EmployeeRole {
    None = 0,Operator = 3
}

现在更容易阅读我们是否与传统规范对齐.

相关文章

原文地址:http://msdn.microsoft.com/en-us/magazine/cc163...
前言 随着近些年微服务的流行,有越来越多的开发者和团队所采...
最近因为比较忙,好久没有写博客了,这篇主要给大家分享一下...
在多核CPU在今天和不久的将来,计算机将拥有更多的内核,Mic...
c语言输入成绩怎么判断等级
字符型数据在内存中的存储形式是什么