我有一个需要部分重写的框架,并且正在采用 AFNetworking。因此,第二版需要属于不同的超类(AFHTTPClient)。我正在尝试使用预处理器标志并有条件地声明它。
这是我的代码:
#define TLC_FRAMEWORK_VERSION 2
#if TLC_FRAMEWORK_VERSION == 1
@interface TKSession : NSObject
#elif TLC_FRAMEWORK_VERSION == 2
@interface TKSession : AFHTTPClient
#endif
{
@private
NSMutableArray *_cachedShifts;
}
编译器(clang)给出一个错误,基本上说明编译器在预处理后没有正确读取声明。它认为它看到了这个:
#define TLC_FRAMEWORK_VERSION 2
{
@private
NSMutableArray *_cachedShifts;
}
...
我在做什么错/错过了什么?