我正在编写一个简单的按钮类,如下所示:
@interface MyButton : NSObject {
id object;
SEL action;
}
@property(strong) id object;
@property SEL action;
-(void)fire;
@end
@implementation MyButton
@synthesize object, action;
-(void)fire {
[object performSelector:action];
}
@end
我在[object performSelector:action]
上收到以下来自Clang的警告
PerformSelector may cause a leak because its selector is unknown
在some research之后,我看到选择器可以属于具有不同内存需求的系列。这个动作的目的是返回空,所以它应该不会造成任何弧形困难,并且应该适合none
家族。
看起来我想要的相关预处理器代码是,或者是的变体:
__attribute__((objc_method_family(none)))
但是我该把它放在哪里才能告诉Clang不要担心呢?
https://stackoverflow.com/questions/7043999
复制相似问题