在C / C ++中使用枚举

我正在努力调整此处显示的代码,但是,我想创建一个可能值的枚举,而不是使用单个值。

如果可能的话,我想将其保留在头文件中,我希望它包含类似于……的值。

enum Notes{ NOTE_B0 = 31, NOTE_C1 = 33, NOTE_CS1 = 35 }; 

现在我想要遍历枚举值,我该怎么做?

我还可以存储超过255的值吗?

你能做的最好的事情就是在某处创建一个包含所有枚举值的静态const数组,然后迭代它。 如果枚举值都是连续的,你很明显可以很容易地遍历它们,但是如果你运气不好的话。

您可以存储适合基础整数类型的所有值。 使用C ++ 11,您可以指定基础整数。 如果您没有指定它,编译器将尝试找到所有值都适合的那个。

迭代是不可能的,因为枚举元素只是编译时间值。 编译器无需在运行时存储它们。