我有一個Swift文件,我導入Foundation和CoreGraphics,但在我撥打abs(x)
的地方,其中x
是一個CGFloat
,我得到這樣的警告:如何解決這個棄用問題「abs已棄用:請使用`abs(_)`免費功能」
ABS是棄用:請使用
abs(_)
免費功能
我應該使用什麼功能?
謝謝
我有一個Swift文件,我導入Foundation和CoreGraphics,但在我撥打abs(x)
的地方,其中x
是一個CGFloat
,我得到這樣的警告:如何解決這個棄用問題「abs已棄用:請使用`abs(_)`免費功能」
ABS是棄用:請使用
abs(_)
免費功能
我應該使用什麼功能?
謝謝
我不會*真的認爲它是一個錯誤 - 我希望在靜態方法中調用'abs(_ :)'在靜態方法'abs(_ :)'的類型上默認解析爲* that *方法,而不是頂級的'abs(_ :)'。但是,是的,使用'Swift.'是在這種情況下消除歧義的正確方法:) – Hamish
@Hamish同意。我想寫更多,但並不確定這個案子應該如何處理。儘管它是作爲一個開放的錯誤提交的。 – shallowThought
正是你在哪裏調用'ABS(X)'?請提供[mcve]。聽起來像你在調用'CGFloat'的靜態'abs'方法,而不是頂級'abs'函數。你是否在任何時候在'CGFloat'擴展中的靜態作用域中調用它? – Hamish
xcode 8.2沒有給出警告 let a:Double = 10.03 let value = abs(a) – Sahil
你使用的是哪個版本的Xcode? – Sahil