2009-12-01 2 views
1

Я получаю это от приложения iPhone, над которым я работаю. Не уверен, как интерпретировать ошибку ... Это бросается на несколько мест в моем коде. Я не вижу никакой картины возникновения.Ошибка Objective-C: ожидается '=', ',', ';', 'asm' или '__attribute__' перед 'классом'

Это общая ошибка? В чем смысл этого?

+2

Возможно, вы захотите опубликовать код. Трудно определить проблему в реферате. –

+0

Первое вхождение в файле .h. Вот источник: #import #import "user.h" #import "Location.h" #import "Media.h" #import "logger.h" @ класс Location, User, Media, Logger; Компилятор выделяет строку класса. Есть идеи? – Yav

+0

Можете ли вы также опубликовать «Logger.h»? – notnoop

ответ

4

Ошибка, которую вы указали, указывает на то, что у вас есть синтаксическая ошибка, связанная с использованием class. Вручную осмотрите первое местоположение, о котором сообщается об ошибке, и вы можете заметить причину.

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

Наиболее распространенные причины:

  1. Пропущенный @ в @class для декларации вперед класса в заголовках
  2. Пропущенные ; после объявления перечисления, структуры или ЬурейеЕ
  3. скопирован C++ кода, где class используется, чтобы заявить структуру, но код недействителен в Objective-C
+0

Спасибо за указатели; Я смотрю на это – Yav

2

Я просто solv эта же проблема, и я отрывал свои волосы от этого.

GCC не выделял проблему в файле заголовка, где произошла ошибка. У меня был пустой символ B в нижней части заголовочного файла (из запуска команды -B для компиляции). Ошибка затем была загружена в файл .m и другие .h-файлы, которые включали проблемный, часто в оператор @class.

Если это проблема с вашим комментарием @class, проблема почти наверняка находится в одном из предыдущих файлов заголовков, поскольку вы включаете их непосредственно заранее - попробуйте комментировать их один за другим и перекомпилировать, чтобы узнать, какие , Как только вы обнаружите файл преступника, найти фактическую ошибку будет намного проще.

0

То же, что и у Ronan, за исключением этого времени. У меня был случайный символ в исходном файле перед тем, как я начал импортировать заголовки (аналогично это было 's' для Command-S). Это особенно бросило меня, поскольку сообщение об ошибке было связано с файлом заголовка библиотеки, который я никогда не касался, и приложение работало нормально в течение нескольких недель до этого. Поэтому, если вы получаете эти ошибки, связанные с файлами заголовков, которые кажутся прекрасными и что вы не коснулись взгляда вокруг чего-то вроде этого.

Смежные вопросы