「.m」ファイルの最上位にある次のようなものに似た、Objective-C実装ファイル全体で使用される定数静的配列を作成したいと思います。
static const int NUM_TYPES = 4;
static int types[NUM_TYPES] = { 
  1,
  2, 
  3, 
  4 };
NUM_TYPES後でファイルで使用する予定なので、変数に入れたいと思いました。
ただし、これを行うと、エラーが発生します
「ファイルスコープでさまざまに変更された「タイプ」」
これは、配列サイズが変数であることに関係している可能性があることを私は収集します(のように、整数リテラルをそこに置いても、このメッセージは表示されませんstatic int types[4])。
私はこれを修正したいのですが、多分私はそれをすべて間違って行っています...私はここに2つの目標があります:
- ファイル全体からアクセスできる配列を作成する
- NUM_TYPESファイル内のさまざまな場所に同じリテラルが散在しないように、変数にカプセル化する
助言がありますか?
[編集]これはCのFAQで見つかりました:http://c-faq.com/ansi/constasconst.html
#define kNUM_TYPES 4?