Xcode警告的那些事儿

在开发过程中,我们编译工程的时候难免会报一些警告,虽然Xcode能编译通过,但是对于强迫症的我来说,是不能容忍的.因此,在此我写下我的解决之道.

1.系统宏解决

有些时候我们用的方法deprecated,但是为了兼容就只能用,因此对于这种特定的警告我一般用系统提供的宏来解决:

#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
    //将编译器提示-Wdeprecated-declarations警告的代码放在这里即可
#pragma clang diagnostic pop

其他类型的警告同理,只需修改ignored后面的警告类型就可以了.

2.文件解决

系统宏固然好用,但是对于我们引入的第三方库就有点麻烦了,因为第三方库会不定时更新,那么一旦更新了三方库,我们去除警告的宏语句就被覆盖了.(因此大家写自己三方库的时候一定要注意警告问题哦O(∩_∩)O),针对这个问题解决方法:

  1. 进入工程的Build Phases下面找到Compile Sources点开之后我们编译的所有文件都在这呢.
  1. 找到你要去除警告的那个文件,双击这个文件,Xcode会弹出一个框,然后你将你想要去除的警告类型放在里面就大功告成啦!!!

3.全工程解决

文件解决固然好,但是又有个问题了,太多文件报一种错误咋办啊? 总不能一个一个的改吧,哈哈,也有方法:

  1. 找到工程的Build Settings,然后找到里面的Other Warning Flags这个选项
  2. 然后在后面添加上你要忽略的警告类型就可以了,这里还可以针对Debug和Release环境分别设置呢.

这下编译工程看看,是不是舒心了好多,赶紧做吧,我去吃点治强迫症的药,药不能停😂

4.如何查看警告类型

知道如何去除了,但是不知道警告类型可不行.我们编译的时候在错误警告提示面板上,右击这个警告,然后点击Reveal in Log,就能看到警告的详细信息了,里面就有警告类型啦.

警告类型对照表

5.结尾总结

去除警告固然舒心,但是不要去除所有的警告,警告也应该是我们关注的一部分,我认为对待警告和对待错误的态度应该一致才行.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,856评论 25 709
  • 静态库与动态库的区别 首先来看什么是库,库(Library)说白了就是一段编译好的二进制代码,加上头文件就可以供别...
    吃瓜群众呀阅读 14,157评论 3 42
  • 如行尸走肉一般,而丧尸是只知道饿与觅食,我常常陷入这种状态,工作与用工资喂饱自己,每天都挥之不去的噩梦。耗尽了时间...
    我是猫仔阅读 1,404评论 0 0
  • 这篇文章写的是关于全局设置 按钮问题,以及左滑Pop控制器的问题 当Push控制器的时候都会执行Nav的push ...
    张三儿阅读 3,798评论 0 0
  • 听奶奶说 建国之前 兔子可以成精 小侄女把兔子放到 她爸爸脚跟前 等了十分钟 很沮丧地离开了 她的爸爸就是 建国
    向日葵爱呀爱太阳阅读 741评论 0 0