Obj-C:跨类的Typedef?

时间:2013-07-16 12:51:08

标签: objective-c enums typedef

我想键入一个在几个类中常见的枚举。我可以:

  • 1在其他人继承的类中创建typedef

  • 2键入每个类的枚举。

  • 3为NSObject创建一个类别,并在那里输入枚举。

虽然第一个选项不需要重复 - 我认为这是三个中最好的 - 只是为了一个枚举创建一个全新的课程感觉是错误的。这是反模式吗?还有更好的方法吗?

1 个答案:

答案 0 :(得分:4)

通常这样做:

#ifndef SomeEnum_enum
#define SomeEnum_enum

typedef enum {
    SomeEnumOne,
    SomeEnumTwo,
    SomeEnumThree
} SomeEnum;

#endif

你必须将你的枚举放在你的 .h 文件中,它可以是一个类,一个单独的文件只用于枚举,一个类别,它真的没关系。

现在你可以把它放在任何你想要的地方,你只需要包含.h文件