我目前正在使用Objective-C开发适用于iOS的扑克游戏,但是在使用enums时遇到了问题。我想创建一个称为“Suit”的enum并将其用于我的Card类,因为每张卡都会有其副牌和西装,例如“Ace Spade”。

我在哪里定义enum

typedef enum Suit {
    Diamond,
    Club,
    Heart,
    Spade
}

另外,我应该在哪种类型的类中定义Suit enum(例如NSObjectUIView等)?
而且,在将Suit.h导入Card.h后,可以直接在Card.h中将其定义为属性吗?

我对Objective-C不太熟悉,因此可以提供任何帮助。

最佳答案

typedef enum {
    Clubs, Diamonds, Hearts, Spades
} Suit;

typedef int Value;

struct Card {
    Suit suit;
    Value value;
};

或者,如果您真的认为Card需要成为重量级类,那么
@interface Card : NSObject
@property Suit suit;
@property Value value;
@end

关于objective-c - 在Objective-C中创建和使用枚举,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12550689/

10-13 09:26