I am reading through some code in AQGrid and came accross:
@protocol AQGridViewDataSource;
@class AQGridView, AQGridViewData, AQGridViewUpdateInfo;
@protocol AQGridViewDelegate <NSObject, UIScrollViewDelegate>
@optional
....
What is the @class for?
It is a forward declaration.
The very next line in that file is
The
@class AQGridView...let’s the compiler know that there is a class calledAQGridViewthat will be available at some point (it will be#import‘ed when you need to actually use theAQGridViewthat is passed as an argument).