我们可以利用编译器特性 使用clang来去除一些警告
基本结构:
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
<# code #>
#pragma clang diagnostic pop
- 方法启用
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
- 分类重写主类方法
#pragma clang diagnostic ignored "-Wobjc-protocol-method-implementation"
- 未使用变量
#pragma clang diagnostic ignored "-Wunused-variable"
- 循环引用
#pragma clang diagnostic ignored "-Warc-retain-cycles"
- 指针不兼容
#pragma clang diagnostic ignored "-Wincompatible-pointer-types"
- 方法弱引用
比如 performSelector 方法
#pragma clang diagnostic ignored "-Warc-performSelector-leaks"
-
补充
最后一定要注意注意在注意
注意:
最好不用用这个方法来把所有的警告都这样忽视了,因为很多警告真的是警告。