Подтвердить что ты не робот

Поддерживает ли Objective-C #elifdef?

Я не могу заставить #elifdef работать в моем проекте iOS. Если я это сделаю:

#ifdef X
const Foo bar[] = { ... };
#else
const Foo bar[] = { ,,, };
#endif

Затем верхняя часть (под X) подсвечивается, а нижняя - нет. Если я это сделаю:

#ifdef W
const Foo bar[] = { ;;; };
#elifdef X
const Foo bar[] = { ... };
#else
const Foo bar[] = { ,,, };
#endif

Затем нижний (внизу) подсвечивается, а верхние два - нет. Зачем? Есть ли другой способ, которым я должен это делать? У меня три цели, и все они используют один и тот же файл. Однако для каждой цели константы немного разные, поэтому я их разделяю таким образом.

4b9b3361

Ответ 1

Вы можете просто написать:

#elif defined X

Что должно быть совместимо со всеми компиляторами, совместимыми с ANSI-C.