Вопрос класса C-класса? - PullRequest
1 голос
/ 13 марта 2010

Моя голова вот-вот взорвется этой логикой, кто-нибудь может помочь?

Класс A # импорт Класс B. Класс A вызывает метод A в классе B.

Это прекрасно работает

Класс B хочет отправить ответ обратно в класс A от другого метода, который вызывается из метода A. Если вы #import класса A из класса B, это фактически бесконечный цикл, и все происходит сбой.

Есть ли способ сделать это правильно, как вещи родительского типа?

Кстати, я разрабатываю для iPhone.

РЕДАКТИРОВАТЬ Когда я #импортировать класс A из класса B я получаю эту ошибку компилятора ...

error: expected specifier-qualifier-list before 'StoreHoursCore'

Есть идеи?

Ответы [ 2 ]

7 голосов
/ 13 марта 2010

Я считаю, что использование директивы @class должно решить вашу проблему.

Использование @class forward объявляет ваш тип класса, чтобы компилятор не кашлял.

Взгляните на этот вопрос на SO.

3 голосов
/ 13 марта 2010

Используйте @class, чтобы объявить его как класс. Это намекает компилятору знать, что это класс, без необходимости включать и компилировать класс несколько раз (причина, по которой вы получаете ошибку). то есть:

@class myClass;

Директива препроцессора #import имеет защиту от множественных включений, а директива #include - нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...