Objective c 我可以在Objective C中将枚举用作属性吗

Objective c 我可以在Objective C中将枚举用作属性吗,objective-c,ios,xcode,properties,enums,Objective C,Ios,Xcode,Properties,Enums,我看到它被定制为使用布尔属性作为标志。诸如此类: @property (nonatomic) BOOL commaAlreadyIntroduced; 我需要这样的东西,但至少有3或4个州 我可以使用枚举吗 独立枚举应如下所示: typedef enum stackState{ empty, oneOperand, operandAndOperator, fullStack }stackState; 是的,这不是问题: @property (nonatomic, assign) st

我看到它被定制为使用布尔属性作为标志。诸如此类:

@property (nonatomic) BOOL commaAlreadyIntroduced;
我需要这样的东西,但至少有3或4个州

我可以使用枚举吗

独立枚举应如下所示:

typedef enum stackState{
    empty, oneOperand, operandAndOperator, fullStack
}stackState;

是的,这不是问题:

@property (nonatomic, assign) stackState yourIvar;
@属性(非原子,赋值)枚举堆栈状态yourIvar

(在我添加枚举之前,一直存在错误)


在没有添加“enum”的情况下,我的单元测试一直显示错误

你应该使用typedef NS_ENUM。这篇文章在这里已经有4年了,我认为任何新的答案都不会引起太多关注。可能是因为你没有使用typedef或NS_ENUM作为你的ENUM。
@property (nonatomic, assign) enum stackState stackStateVar;