假設我有一個內容之間具有任意增量的枚舉。像這樣:如何通過項目之間的任意增量枚舉枚舉
typedef enum {this=2,that=5,whoa=6}example;
現在我想通過它們來枚舉。如果每個項目的內容都增加1,那麼使用簡單的for
循環就很容易了。在繼續操作之前,我仍然可以使用for
但在example
enum中測試每個選項,但這看起來相當低效。有枚舉通過枚舉的標準方式嗎?
假設我有一個內容之間具有任意增量的枚舉。像這樣:如何通過項目之間的任意增量枚舉枚舉
typedef enum {this=2,that=5,whoa=6}example;
現在我想通過它們來枚舉。如果每個項目的內容都增加1,那麼使用簡單的for
循環就很容易了。在繼續操作之前,我仍然可以使用for
但在example
enum中測試每個選項,但這看起來相當低效。有枚舉通過枚舉的標準方式嗎?
enums
基本上是整型常量。模擬集(我猜,這是你想要的)使用dictionaries
。然後,您可以輕鬆遍歷所有元素。
我不認爲這是完全正確的。我看過使用方法枚舉枚舉的例子,但這是針對順序排序的枚舉。 – johnbakers 2012-04-03 01:49:34
當然你可以做到這一點,但這只是使用事實,即在這種情況下,* set *的數字也是一個*數列序列*。但是,在一般情況下並不是這樣。 – Matthias 2012-04-03 03:53:04
答案被發現在這裏:http://stackoverflow.com/questions/105372/how-to-enumerate-an-enum – johnbakers 2012-04-03 15:23:12
我找到了答案[這裏] [1]。 [1]:http://stackoverflow.com/questions/105372/how-to-enumerate-an-enum – johnbakers 2012-04-03 15:22:58
這實際上是不能解決問題的,至少,如果你的一個尋找一個解決方案Objective-C(如你所標記的)。答案適用於C#。 – Matthias 2012-04-03 15:31:52