但是,我正在調整here所示的代碼,而不是使用單個值來創建可能值的枚舉。在C/C++中使用枚舉
我想如果可能的話把這個頭文件,我想它包含的值類似...
enum Notes{
NOTE_B0 = 31,
NOTE_C1 = 33,
NOTE_CS1 = 35
};
現在,我期待通過枚舉值進行迭代,如何我會這樣做嗎?
也可以存儲超過255的值?
但是,我正在調整here所示的代碼,而不是使用單個值來創建可能值的枚舉。在C/C++中使用枚舉
我想如果可能的話把這個頭文件,我想它包含的值類似...
enum Notes{
NOTE_B0 = 31,
NOTE_C1 = 33,
NOTE_CS1 = 35
};
現在,我期待通過枚舉值進行迭代,如何我會這樣做嗎?
也可以存儲超過255的值?
你可以做的最好的是創建一個所有枚舉值的靜態常量數組,並遍歷它。如果枚舉值都是連續的,那麼顯然可以很容易地遍歷它們,但是由於運算不好,
您可以存儲所有適合底層整數類型的值。使用C++ 11,您可以指定基礎整數。如果你沒有指定它,編譯器會嘗試找到所有值都適合的值。
迭代是不可能的,因爲枚舉元素只是編譯時間值。編譯器不需要在運行時存儲它們。
你的文件被命名爲'helloworld.c',但你講的是一堂課。你使用C++還是C? – 2012-04-17 00:04:03
... Aaand錯誤消息已消失。我是否幻覺?因爲我沒有看到編輯日誌... – 2012-04-17 00:05:17
@ RichardJ.RossIII:發佈信息後有五分鐘的窗口,其中可以進行更改而不會被記錄。 – GManNickG 2012-04-17 00:06:13