iOS开发之消除警告

        在iOS开发过程中,难免会遇到一些黄色警告,这些警告大多来自于使用了废弃的API、类型匹配不当的警告和一些循环引用的警告,其中一些是自己编码过程的留下的警告,当然更多的则是使用了某些停止更新的第三方库,每当SDK升级过后,就会出现几十上百个警告,这对一个有代码洁癖的强迫症患者来讲,每次看到都犹如鲠在喉、如芒刺背。那有没有办法解决这一问题呢?答案是肯定的,下面就介绍几个消除警告的方法:


方式一:直接找到被警告的那行代码根据警告信息修改即可,这种方法最简单直接、安全高效,对于自己写的代码产生的警告还好,但大多数警告来自第三方库,其海量的代码和复杂的逻辑使我们不敢轻易去改动,那么请看下面的方法;


方式二:消除指定页面的警告。使用Clang提供的方法来解决这个问题,如下所示;

#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations" //双引号内为警告名称

//这里是产生警告的代码

#pragma clang diagnostic pop

我们使用#pragma clang diagnostic push/pop来消除特定的代码片段产生的警告,然而如果像这样的代码片段太多,那这种方法的工作量还是太大,那还有没有其它的办法呢?请看下面;


方式三:消除某个类型的所有警告。在项目 targets -- Build Setting 下搜索 Other Warning Flags 添加警告代码,这里的警告代码和上面方法中的警告代码有一点小区别:

-Wdeprecated-declarations —> 改为 -who-deprecated-declarations   //使用了弃用方法的警告
-Wunused-variable         —> 改为 -who-unused-variable           //未使用变量的警告
-Warc-retain-cycles       —> 改为 -who-arc-retain-cycles         //循环引用的警告

具体操作请看下图:



如何找到警告代码请看下图:



虽然看到警告让人极其烦躁,但警告真的是警告,如果长期忽略,极易产生安全隐患,还望各位慎重对待!





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值