ожидаемый идентификатор или '(' в iOS

Я пытаюсь следовать одному руководству по основным данным Apple для iOS, но не могу пройти мимо этой ошибки.

Я попытался разобраться в этом, прочитав здесь все вопросы, но никуда не денусь,

Есть идеи?

#import <UIKit/UIKit.h> UINavigationController *navigationController; @interface AppDelegate : UIResponder <UIApplicationDelegate> @property (strong, nonatomic) UIWindow *window; @property (nonatomic, retain) UINavigationController *navigationController; // expected identifier or '(' on the line above @end 

Лучшее решение – измените ваши текстовые настройки, чтобы привязать ctrl-return к фактической строке новой строки.

Я написал сообщение в блоге со скриншотами .


Что сказал @jlehr, но с шагами.

  1. перейдите в конец строки, которая объявляет navigationController

  2. hit ctrl-a

Если курсор переходит к началу window объявления строки, то новая строка в этой строке является фиктивной.

Быстрая починка; с курсором в начале window объявления строки, нажмите стрелку вниз , затем удалите , а затем верните .

Случается со мной все время, потому что у меня есть emacs глубоко укоренившийся и, таким образом, нажимает ctrl-return, который вставляет неправильный тип новой строки, заставляя компилятор barf. Файл ошибка тоже, пожалуйста, будет отмечена как обман, но обман указывает на частоту, с которой это расстраивает пользователей.

Удалите этот оператор или измените имя переменной:

 UINavigationController *navigationController; 

и попробуй еще раз.

У вас одно и то же имя переменной в одном классе. один как свойство и один как глобальный.

Редактировать:

Или ваше намерение было использовать в качестве ivar, поэтому вы должны использовать его как:

 @interface AppDelegate : UIResponder <UIApplicationDelegate>{ UINavigationController *navigationController; } @property (strong, nonatomic) UIWindow *window; @property (nonatomic, retain) UINavigationController *navigationController; @end 

Код, который вы разместили, компилируется на моей машине, поэтому, по всей вероятности, версия вашего проекта Xcode содержит бродячий, непечатаемый символ, вероятно, в строке, где вы объявляете свойство window . В качестве быстрого эксперимента попробуйте прокомментировать эту строку, чтобы узнать, есть ли проблема.

После того, как вы выделили строку, содержащую проблемный символ, оставьте ее прокомментированной и перепечатайте текст на новой строке. Как только вы получите эту работу, вы можете удалить прокомментированный код.