Условная компиляция при использовании ARC
Есть ли способ спросить компилятор, включен ли ARC, а затем условно скомпилировать на основе этого значения? Например, у меня есть протокол:
@protocol ProtocolA
@required
-(void)protocolMethodOne
@optional
-(void)protocolMethodTwo;
@end
Если я использую ARC, я хотел бы сделатьprotocolMethodA
необязательный при использовании ARC и обязательный, если не используется ARC. Это связано с тем, что одной из основных причин использования этого метода является освобождение экземпляра объекта.
С учетом сказанного вот то, что я хотел бы случиться:
@protocol ProtocolA
#ifdef SOME_ARC_VARIABLE
@optional
#else
@required
#endif
-(void)protocolMethodOne
@optional
-(void)protocolMethodTwo;
@end