1.retain cycle
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Warc-retain-cycles"
//code这里插入报警的代码
#pragma clang diagnostic pop
2.不兼容指针类型
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wincompatible-pointer-types"
//code这里插入报警的代码
#pragma clang diagnostic pop
3.方法启用告警
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
//code这里插入相关的代码
#pragma clang diagnostic pop
4.未使用变量
#pragma clang diagnostic push
#pragma clang diagnostic ignored "--Wunused-variable"
//code这里插入报警的代码
#pragma clang diagnostic pop
5.sel中使用了不存在的方法名
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wundeclared-selector"
//code这里插入报警的代码
#pragma clang diagnostic pop
6.忽略参数非空检查
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-需要忽略的命令"
// code这里插入报警的代码
#pragma clang diagnostic pop
更多内容,请查阅
[http://clang.llvm.org/docs/UsersManual.html#diagnostics_pragmas](http://clang.llvm.org/docs/UsersManual.html#diagnostics_pragmas)
[http://nshipster.com/pragma/](http://nshipster.com/pragma/)
[http://www.cocoachina.com/applenews/devnews/2013/0731/6707.html](http://www.cocoachina.com/applenews/devnews/2013/0731/6707.html)
#pragma
作为预处理指令,#pragma 在编译时进行计算。但它并不像如 #ifdef…#endif 之类的宏,#pragma 的使用方式不会改变你的应用运行时的行为。相反的,#pragma 声明主要由 Xcode 用来完成两个主要任务:整理代码和防止编译器警告。
#pragma clang的快捷方式
在用的地方打ig(不区分大小写)就会自动调用出来
网友评论