【发布时间】:2012-11-06 11:54:56
【问题描述】:
所以,这是代码:
typedef enum{
zero, one, two, three, four, five, six, seven, eight, nine
}Digits;
typedef enum{
zero, one, two, nine
}DigitsThatILikeToUse;
问题: 如果我定义函数:
void takeMyFavoriteDigits(DigitsThatILikeToUse favorite); (C)
-|+(void) takeMyFavoriteDigits:(DigitsThatILikeToUse)favorite; (Objective-C)
我不能将它与基本enum Digits 的反向引用一起使用,因为我在enum DigitsThatILikeToUse 中的订单不同。
我的解决方案是这样写数字的明确位置:
typedef enum{
zero = 0, one = 1, two = 2, nine = 9
}DigitsThatILikeToUseInEdition;
但是!我无法遍历这个新的enum DigitsThatILikeToUseInEdition。
我想在enum 中创建一个subEnum 并遍历它。有可能吗?
我最好的想法是使用这样的东西:
typedef enum{
beginIteratorDigitsThatILike, zero, one, two, nine, endIteratorDigitsThatILike, three, four, five, six, seven, eight
}Digits;
但也许有什么解决办法?
【问题讨论】:
-
请为您使用的语言添加标签。
-
这是三种不同的语言,C++ 比 C 或 Objective-C 有更多的枚举特性。请选择一种语言。
-
好的,
objective-c,但我在c上写代码 -
如果你用 C 写代码,然后加上 C 标签,而不是 Objective-C 和 C++ - Objective-C 是 C 的超集,你可以用它做一些你可以做的事情' t 用纯 C 语言做,所以你不想要 Objective-C 的答案。 C++ 甚至不是 C 的严格超集,如果你只有 C,C++ 特定的答案很可能对你毫无用处。
-
你想完成什么?看起来 DigitsThatILikeToUse 应该是一个数组。
标签: objective-c c enums customization