[英]Working with enums in C/C++
我正在努力调整此处显示的代码,但是,我想创建一个可能值的枚举,而不是使用单个值。
如果可能的话,我想将它保留在头文件中,我希望它包含类似于......的值。
enum Notes{
NOTE_B0 = 31,
NOTE_C1 = 33,
NOTE_CS1 = 35
};
现在我希望迭代枚举值,我该怎么做?
我还可以存储超过255的值吗?
你能做的最好的事情是在某处创建一个包含所有枚举值的静态const数组,然后迭代它。 如果枚举值都是连续的,你很明显可以很容易地遍历它们,但如果你运气不好。
您可以存储适合基础整数类型的所有值。 使用C ++ 11,您可以指定基础整数。 如果您没有指定它,编译器将尝试找到所有值都适合的那个。
迭代是不可能的,因为枚举元素只是编译时间值。 编译器不需要在运行时存储它们。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.