下面是一个简单的 PerformSelector,它向 obj 发送消息以执行循环方法。一切正常,但我收到以下黄色警告。
PerformSelector 可能会导致泄漏,因为它的选择器是未知的。
#import "MyClass.h"
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[])
{
@autoreleasepool {
MyClass *obj = [[MyClass alloc]init];
SEL mySel = @selector(looping);
[obj performSelector:mySel];
}
return 0;
}
这个警告没有意义,因为 performSelector 必须知道 mySel 因为循环方法确实被调用 - 有什么想法吗?
更新
我的类.h
#import <Foundation/Foundation.h>
@interface MyClass : NSObject
-(void)looping;
@end
我的班级.m
#import "MyClass.h"
@implementation MyClass
-(void)looping{
NSLog(@"Hey, i'm looping");
}
@end