在iOS开发过程中,偶尔会碰到一些编译器警告,如果能够确定该警告不会影响到程序的正常运行,则可以手动告诉编译器忽略掉这个警告
iOS常用的忽略警告类型:
1.方法弃用警告
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
//过期的方法
#pragma clang diagnostic pop
2.不兼容指针类型警告
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wincompatible-pointer-types"
//不兼容指针类型
#pragma clang diagnostic pop
3.循环引用警告
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Warc-retain-cycles"
//循环引用
#pragma clang diagnostic pop
4.未使用变量警告
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-variable"
//未使用的变量
#pragma clang diagnostic pop
5.内存泄漏警告
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Warc-performSelector-leaks"
//内存泄漏警告
#pragma clang diagnostic pop
还有一种方式
可以在pch等具有大范围作用域的头文件中包含:
#pragma clang diagnostic ignored “警告名称”
如果剔除了push与pop则后面所有的代码都具有强制消除警告作用
参考链接
http://www.cnblogs.com/dsxniubility/p/4757760.html
https://www.jianshu.com/p/06c5f042d955
网友评论