Search


Post A Inquiry
click to reload

技术文档

Makefile经典教程(掌握这些足够)

代码中的警告有时候有助于一些问题定位,但是随着时间一长,一些无法解决的警告会越来越多,这些警告看着确实头疼。对于一个有洁癖的技术来说,一定要消除它们。


消除方法

局部消除警告的方法

#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


http://www.cocoachina.com/ios/20141218/10678.html

--------------------- 

作者:ruglcc 

来源:CSDN 

原文:https://blog.csdn.net/ruglcc/article/details/76509213 

版权声明:本文为博主原创文章,转载请附上博文链接!