【发布时间】:2011-03-10 18:29:30
【问题描述】:
我有大约 30 个不同的标记枚举,我想将它们放入一个数组中以进行索引和快速访问。我还要澄清一下,我没有 1 个具有 30 个值的枚举,但我有 30 个具有不同数量值的枚举。
目标是将它们添加到指定索引处的数组中。这样我可以编写一个函数,我可以在其中传递数组索引来设置枚举的特定值。
更新: 这是我想做的一个例子。
枚举主要( 枚举1 = 0, 枚举2 = 1, enumn = n-1 ) - 这具有与关联枚举的索引匹配的索引
[标志] enum1(value1=0, value2=1, value3=2, value4=4...)
[标志] 枚举2("")
[标志] 枚举2("")
因为我使用的是可标记枚举,所以我有一个类似以下的类
public static class CEnumWorker
{
public static enum1 myEnum1 = enum1.value1;
public static enum2 myEnum2 = enum2.value1;
public static enumN myEnumN = enumN.value1;
//I would then have functions that set the flags on the enums. I would like to access the enums through an array or other method so that I do not have to build a large switch statement to know which enum I am wanting to manipulate
}
【问题讨论】:
-
也许代码示例会有所帮助......但这对我来说没有一点意义。
-
为什么要将不同的类型放在同一个数组中?
-
“用于索引和快速访问”?由谁或由什么?您想将大量整数、字符串和浮点数放入数组中以进行索引和快速访问吗?为什么要将这些枚举视为相关实体?我强烈怀疑无论你想做什么,将枚举扔进数组都是错误的解决方案。
-
这是有史以来最蹩脚的想法,你完全错过了枚举的意义。听起来您需要字典,而不是枚举列表。