Xcode 8 的 clang 新的警告控制,當(dāng)所有路徑都通過一個函數(shù)都調(diào)用自身時,會產(chǎn)生一個警告 ??。
下圖展示了,如何開啟該功能(默認(rèn)開啟)。

下面展示了產(chǎn)生該警告的一種情況

test
值得注意的地方是,對于大部分的 iOS 開發(fā)者,該功能的作用微乎其微。具體原因可以看下面的截圖。

test1 & setTitle:
test1 函數(shù)。在
if-else語句中,存在第一個if分支,該分支沒有直接調(diào)用test1(),所以不會產(chǎn)生警告??。OC 中的方法調(diào)用。因?yàn)?OC 是動態(tài)語言,函數(shù)調(diào)用順序是在程序執(zhí)行時確定的(在特殊情況下,該寫法不會產(chǎn)生死循環(huán))。所以,方法調(diào)用不會產(chǎn)生任何警告??。