2017-08-08 104 views
1

我想知道是否有將是swift以下之間的性能差異:性能迅速擴展

let x = 42.42 
print(floor(x)) 

let x = 42.42 
extension Double { 
    func myFloor() -> Double { 
    return floor(self) 
    } 
} 
print(x.myFloor()) 
+0

那麼第二個具有一個編譯時錯誤(在聲明爲返回空隙的方法非void返回),並導致運行時錯誤(無限遞歸,因爲'floor'指實例方法,而不是按照預期的'Darwin.floor'或'Glibc.floor') – Alexander

回答