为纸牌游戏创建具有多个枚举状态的构造函数?

时间:2013-02-28 10:10:56

标签: objective-c arrays constructor enums

我正在尝试编写一个自定义对象,我想要多个字母关联或标记到它。

我正在尝试编写一个类似的设置,其中一个Object可以分配多个字母(或booelan标志)。

例如,Company可能包含字母“A,B,C,F”(字母A到F)。

我想创建一张Company卡,并在构造函数方法中为其指定某些字母。

起初我以为我会使用一个数组 - 但是我想保持字母分开,因为这些字母实际上只是一个“布尔”标志的大矩阵。

IE:
Letters          A    B   C   D   E   F
"Brand X"        Y    Y   N   N   Y   N

我的代码如下;

typedef enum _Letters {
    LetterA,
    LetterB,
    LetterC,
    LetterD,
    LetterE,
    LetterF,
} Letters;

@interface Corporation : NSObject
{
    NSString *_name; // Name of the card ie: "Automative"
    NSArray *_letters; // A->F
    int _value; // Value of the card in $
    VENCardState _state; // Current state of the card (is it in play or discard pile, etc)
}

我想要但我确定如何使letters包含我在init构造函数中想要的所有字母。

即;

initWithLetters:A,B,C....

但我不确定如何做到这一点。

基本上我想要一种简单的方法来制作一个具有多个枚举状态的构造函数,然后该方法会将这些枚举状态添加到letters

的数组中

我应该能够记录对象并发现它与之相关的字母。

1 个答案:

答案 0 :(得分:1)

试试这个: - (id)initWithLetters:(VENLetters)letter,...; 要么: - (id)initWithLettersArray:(NSArray *)lettersArray;