iOS开发如何消除Xcode中的警告(黄色叹号)
原创 2017年08月01日 10:43:05 标签:xcode /ios开发 /ios /clang 536
代码中的警告有时候有助于一些问题定位,但是随着时间一长,一些无法解决的警告会越来越多,这些警告看着确实头疼。对于一个有洁癖的技术来说,一定要消除它们。
消除方法
局部消除警告的方法
pragma clang diagnostic push
pragma clang diagnostic ignored “警告名称”
// 要消息的代码块
// 被夹在这中间的代码针对于此警告都会无视并且不显示出来
pragma clang diagnostic pop
1
2
3
4
5
全局消息警告的方法
在项目的pch文件中.pch
pragma clang diagnostic ignored “警告名称”
关闭某个文件的警告
关闭某个源文件里的某种警告,在target-> Build Phases->Compile Source,给指定的源文件添加编译选项,如下图
关闭整个工程的相关警告
设置工程的警告,如下图
关闭cocoPods第三方库警告
如果想关闭第一个cocoPods引入的第三方库引起的警告,可以找到Pod对应的target在编译参数中添加 -w。注意,是小写-w, 大写-W,则是显示所有警告
xcode取得警告名称的方法
1.在某一个警告处,右键, reveal in log
2.[-W]开头的值
常用的警告名称
pragma clang diagnostic ignored “-Wunused-variable” 未使用的变量
pragma clang diagnostic ignored “-W#warnings” 通过 #warning主动添加的警告
pragma clang diagnostic ignored “-Wformat” 字符串格式化警告
pragma clang diagnostic ignored “-Wdeprecated-declarations” 方法弃用告警
pragma clang diagnostic ignored “-Wincompatible-pointer-types” 不兼容指针类型
pragma clang diagnostic ignored “-Warc-retain-cycles” retain cycle
更多请查阅
更多内容,请查阅
http://clang.llvm.org/docs/UsersManual.html#diagnostics_pragmas
http://nshipster.com/pragma/
http://www.cocoachina.com/applenews/devnews/2013/0731/6707.html