在Swift 2.x的時(shí)候,帶返回的方法我們?nèi)绻谡{(diào)用的時(shí)候后面使用到返回的參數(shù),編譯器不會(huì)有任何的警告,想要編譯器給出警告的話需要自己在方法前面添加屬性@warn_unused_result, 如
@warn_unused_result func doSomething() -> Bool {
return true
}
這時(shí)候調(diào)用這個(gè)方法沒有使用返回參數(shù)的情況下編譯器就會(huì)給出警告:
Result of call to 'doSomething()' is unused
到了 Swift 3.0 我們不需要這樣寫了,默認(rèn)情況下編譯器就是會(huì)去檢查返回參數(shù)是否有被使用,沒有的話就會(huì)給出警告。如果你不想要這個(gè)警告,可以自己手動(dòng)加上 @discardableResult,如:
@discardableResult func doSomething() -> Bool {
return true
}
這樣一來一切又恢復(fù)正常了。
參考: http://useyourloaf.com/blog/swift-3-warning-of-unused-result/