如何使
enum
变量以一定的算术级数递增?
例如:
enum Days {Sat=1, Sun, Mon, Tue, Wed, Thu, Fri};
现在这些值将增加 1。我怎样才能增加这些值,让我们说再见 2?比如:
enum Days {Sat=2, Sun=4, Mon=6, Tue=8, Wed=10, Thu=12, Fri=14};
我必须为每个元素手动执行此操作吗?
是的,实际上您必须手动执行此操作 - 但您真的需要这样做吗?
未用FlagsAttribute
修饰的枚举不需要为每个成员分配特定值,因为枚举的主要目的是区分特定的项目集,而不一定将这些项目映射到特定值。根据您需要数字的用途,使用枚举外部的映射解决方案很可能会是更好的软件工程。理论上,您也可以使用
T4 模板 以编程方式执行此操作;您将编写一些代码,从您自己的角度自动生成所需的源代码,但这对于这样一个简单的场景来说太过分了。