gpt4 book ai didi

c# - 枚举需要索引吗?

转载 作者:太空宇宙 更新时间:2023-11-03 17:25:34 24 4
gpt4 key购买 nike

我有许多枚举,其中包含不时更改的长列表

public MyEnumType MyEnum
{
None = 0,
Option1 = 1,
Option2 = 2,
etc..
}

当它们发生变化时,我需要对索引重新编号,因为新选项总是置于现有选项之间。

问题是,如果我删除索引,枚举是否始终遵循从上到下的顺序?

public MyEnumType MyEnum
{
None,
Option1,
Option2,
etc..
}

提前致谢。

最佳答案

是的,他们会的。如果您想确保值以某个特定值开始,您也可以仅指定第一个元素:

public MyEnumType MyEnum
{
None = 1,
Option1, // -> 2
Option2, // -> 3
}

有关其他详细信息,请查看 the docs .

请注意,在大多数情况下,您的代码不应该关心确切的数值。当你关心的情况是例如。如果您声明一个枚举,它是外部类型(例如互操作)的别名,那么您需要确保值是相同的。另一种情况是当枚举表示二进制标志时,您需要这样的东西:

[Flags] 
public MyEnumType MyEnum
{
None = 1,
Option1 = 2,
Option2 = 4
}

关于c# - 枚举需要索引吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16913751/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com