清除Xcode中的无用Warning

前言

不管如何,工程与代码必须保持适度的整洁与优雅。之前就有Treat Warning as error的观点,一些IDE都有内置支持这一选项。Xcode戳这里html

但话分两头,对于某些长期不会更改或者第三方库的Warning,咱们应该及时地将其屏蔽,以避免将重要的Warning淹没。ios

方法一

#pragma clang diagnostic ignoredsegmentfault

clang能够手动屏蔽warning,具体方法以下:xcode

#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wobjc-protocol-method-implementation"
//your code where might produce warnings
#pragma clang diagnostic pop

引号中-Wobjc-protocol-method-implementation表示你要屏蔽的Warning类型。
常见的Warning类型还有:
-Wobjc-protocol-method-implementation -Wunused-variable
-Wno-unused-parameteride

如何查看Warning的编译Flag

有时候咱们须要或者该Warning的编译Flag,方法以下:ui

图片描述
对该Warning点击鼠标右键,选择Reveal in Logspa

图片描述
如上图所示,你能够看到这个Warning的编译Flag。3d

方法二

对于Cocoapods依赖的三方库产生的Warning。在Podfile中加入以下内容:code

pod 'SSZipArchive', :inhibit_warnings => true

具体参考Cocoapods 文档
Cocoapods dochtm

方法三

屏蔽一些特定的Warning

  • unused var

__unused int i;

unused parameter

总述

目前这是我知道的两种屏蔽Warning的两种方案。固然,programmer必须严肃对待Warning。Treat warning as error!

参考

#pragma
clang文档 关于warning的选项

原做写于segmentfault 连接

相关文章
相关标签/搜索