(特別是 SWIFT)可以說我有這樣的功能
static func * (complex: i, number: Int) -> i{
return i(number*complex.times)
}
如您所見,我希望能夠將復數乘以整數。但是,這僅適用于復數在左側(例如:i(5) * 5) 所以我可以做 i(10) * 8 但不能做 8 * i(10) 因為函式引數必須是以一定的順序。我知道我可以做第二個多載函式,但是有什么辦法可以解決嗎?我學得很快,學習一些技巧和竅門會很好。謝謝,來自我
uj5u.com熱心網友回復:
不,沒有,但是您可以撰寫一個函式來呼叫另一個函式以避免重復實作。
static func * (complex: i, number: Int) -> i{
return i(number*complex.times)
}
static func * (number: Int, complex: i) -> i{
return complex * number
}
uj5u.com熱心網友回復:
不,Swift 函式的引數有特定的順序。Swift 不支持無序引數。正如克雷格在他的回答中指出的那樣,您可以提供多個版本的函式,它們以不同的順序獲取引數,并讓它們都呼叫實際實作代碼的相同函式。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/483972.html
標籤:迅速
上一篇:“ARFrame”型別的值沒有成員“viewTrans”
下一篇:Swift中默認閃爍游標
