@protocol с определением @class - PullRequest
0 голосов
/ 14 декабря 2011

Я читаю какой-то код в AQGrid и натолкнулся на:

@protocol AQGridViewDataSource;
@class AQGridView, AQGridViewData, AQGridViewUpdateInfo;

@protocol AQGridViewDelegate <NSObject, UIScrollViewDelegate>

@optional
....

Для чего нужен @class?

1 Ответ

2 голосов
/ 14 декабря 2011

Это предварительная декларация.

Самая следующая строка в этом файле:

- (void) gridView: (AQGridView *) gridView willDisplayCell: (AQGridViewCell *) cell forItemAtIndex: (NSUInteger) index;

@class AQGridView... дает компилятору знать, что в некоторый момент будет доступен класс с именем AQGridView (он будет #import 'ed, когда вам действительно нужно использовать AQGridView, который передается как аргумент).

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