清除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 連接

相關文章
相關標籤/搜索