3

複数のクラスに共通する列挙型を型定義したい。私はできた:

  • 1 他の人が直接継承するクラスで typedef を作成します

  • 2 各クラスの列挙型を型定義します。

  • 3 NSObject のカテゴリを作成し、そこで列挙型を typedef します。

最初のオプションは繰り返しを必要としませんが、これは 3 つの中で最も優れていると思いますが、ただ 1 つの列挙型のためだけにまったく新しいクラスを作成するのは間違っていると感じます。これはアンチパターンですか?より良い方法はありますか?

4

1 に答える 1

4

通常は次のように行います。

#ifndef SomeEnum_enum
#define SomeEnum_enum

typedef enum {
    SomeEnumOne,
    SomeEnumTwo,
    SomeEnumThree
} SomeEnum;

#endif

列挙型を.hファイルに入れる必要があります。これは、クラスの 1 つ、列挙型専用の別のファイル、カテゴリのいずれかにすることができますが、実際には問題ではありません。

これで、好きな場所に配置できます.hファイルを含めるだけです

于 2013-07-16T12:57:19.160 に答える