내 ".m"파일의 최상위 수준에서 다음과 유사한 Objective-C 구현 파일 전체에서 사용할 상수 정적 배열을 만들고 싶습니다.
static const int NUM_TYPES = 4;
static int types[NUM_TYPES] = {
1,
2,
3,
4 };
NUM_TYPES
나중에 파일에서 사용할 계획 이므로 변수에 넣고 싶었습니다.
그러나 이렇게하면 오류가 발생합니다.
"파일 범위에서 다양하게 수정 된 '유형'"
나는 이것이 배열 크기가 변수 인 것과 관련이있을 수 있다고 수집합니다 (예 : 정수 리터럴을 넣을 때이 메시지를받지 못합니다 static int types[4]
).
나는 이것을 고치고 싶지만, 아마 나는 그것에 대해 모두 잘못하고있을 것입니다 ... 여기에 두 가지 목표가 있습니다.
- 파일 전체에서 액세스 할 수있는 배열을 가지려면
NUM_TYPES
변수로 캡슐화 하여 파일의 다른 위치에 동일한 리터럴이 흩어져 있지 않도록
어떤 제안?
[편집] C FAQ에서 발견 : http://c-faq.com/ansi/constasconst.html
#define kNUM_TYPES 4
?