在 C++ 中,我可能会在标题中执行以下操作:
cClass {
enum eList { FIRST, SECOND };
}
...这在其他一些课程中:
cClass::eList ListValue = GetListValue();
if(ListValue == cClass::FIRST) {
...
}
是否有使用直接的 Objective-C 语言功能或 Cocoa 中的一些技巧的等价物来允许类似范围 enum
的 s?
在 C++ 中,我可能会在标题中执行以下操作:
cClass {
enum eList { FIRST, SECOND };
}
...这在其他一些课程中:
cClass::eList ListValue = GetListValue();
if(ListValue == cClass::FIRST) {
...
}
是否有使用直接的 Objective-C 语言功能或 Cocoa 中的一些技巧的等价物来允许类似范围 enum
的 s?
好吧,您可以使用 C 来模拟它的一部分:
创建一个 C 枚举并键入:
enum MONEnumType : uint8_t {
MONEnumType_Undefined = 0,
MONEnumType_Red,
MONEnumType_Green,
MONEnumType_Blue
};
声明容器:
struct MONEnum {
const enum MONEnumType Red, Green, Blue;
};
声明存储:
extern const struct MONEnum MONEnum;
定义存储:
const struct MONEnum MONEnum = {
.Red = MONEnumType_Red,
.Green = MONEnumType_Green,
.Blue = MONEnumType_Blue
};
正在使用:
enum MONEnumType ListValue = GetListValue();
if (ListValue == MONEnum.Red) {
/* ... */
}