在C / C ++中使用枚举
我正在努力调整此处显示的代码,但是,我想创建一个可能值的枚举,而不是使用单个值。
如果可能的话,我想将其保留在头文件中,我希望它包含类似于……的值。
enum Notes{ NOTE_B0 = 31, NOTE_C1 = 33, NOTE_CS1 = 35 };
现在我想要遍历枚举值,我该怎么做?
我还可以存储超过255的值吗?
你能做的最好的事情就是在某处创建一个包含所有枚举值的静态const数组,然后迭代它。 如果枚举值都是连续的,你很明显可以很容易地遍历它们,但是如果你运气不好的话。
您可以存储适合基础整数类型的所有值。 使用C ++ 11,您可以指定基础整数。 如果您没有指定它,编译器将尝试找到所有值都适合的那个。
迭代是不可能的,因为枚举元素只是编译时间值。 编译器无需在运行时存储它们。