#pragma 消除警告

一、#paragma clang diagnostic ignored 使用

找到你要取消的警告类型写到ignored后面用双引号括起来
示例:

#pragma clang diagnostic push     
#pragma clang diagnostic ignored "-Wnonnull" // 消除非nil警告
// 这里是产生警告的代码     
#pragma clang diagnostic pop

常遇到的一些警告类型

#pragma clang diagnostic push     
#pragma clang diagnostic ignored "相关参数"
// code        
#pragma clang diagnostic pop 

-Wdeprecated-declarations 方法被弃用
-Warc-performSelector-leaks performSelector取消警告
-Warc-retain-cycles 循环引用
-Wunused-variable 未使用变量
-Wcovered-switch-default 未使用default
-Wnonnull 消除非nil警告

二、警告类型

但是实际开发中很多警告,难道要记住全部警告类型吗?这怎么可能。
我们只需要学会有了警告怎么找到警告类型就可以了。
在xcode右侧栏中选中show the issue navigator, 从列表中找到目标警告,鼠标右键点击Reveal in Log


Reveal in Log
警告类型

把找到得劲警告类型放到#pragma clang diagnostic ignored "警告类型"就可以忽略了。
good job!

你可能感兴趣的:(#pragma 消除警告)