解决ARC下performselector-may-cause-a-leak-because-its-selector-is-unknown 警告

在ARC下使用 

[theTarget performSelector:theTarget withObject:Nil];

会出现警告:performselector-may-cause-a-leak-because-its-selector-is-unknown 

解决方法:

1:添加如下宏

#define SuppressPerformSelectorLeakWarning(Stuff) \
do { \
_Pragma("clang diagnostic push") \
_Pragma("clang diagnostic ignored \"-Warc-performSelector-leaks\"") \
Stuff; \
_Pragma("clang diagnostic pop") \
} while (0)

2:使用宏

        SuppressPerformSelectorLeakWarning([theTarget performSelector:theAction withObject:@"hello"]);

  

参考:http://stackoverflow.com/questions/7017281/performselector-may-cause-a-leak-because-its-selector-is-unknown

posted @ 2013-11-01 15:18  cocoajin  阅读(501)  评论(0编辑  收藏  举报