消除performSelector:警告的方法

来源:互联网 发布:mac游戏排行榜 编辑:程序博客网 时间:2024/06/11 13:20

performSelector:方法将会因为不知道它的选择器而导致内存泄露。ARC编译器会给出一个警告:

"performSelector may cause a leak because its selector is unknown"

可以利用IMP和函数指针方法配合解决:

 SEL selector = NSSelectorFromString(@"someMethod");    IMP imp = [self methodForSelector:selector];    void (*func)(id,SEL) = (void *)imp;    func(self,selector);
0 0
原创粉丝点击