0
我只是遵循迭代器模式,你能告訴我什麼是S.Iterator.Element
在下面的代碼&什麼意思是Int where Turn == S.Iterator.Element
?swift中的iterator.element是什麼?
func computeScoreIncrement<S : Sequence>(_ pastTurnsReversed: S) -> Int where Turn == S.Iterator.Element {
var scoreIncrement: Int?
for turn in pastTurnsReversed {
if scoreIncrement == nil {
scoreIncrement = turn.matched! ? 1 : -1
break
}
}
//Turn is class name & nextScorer is protocol instance.
return (scoreIncrement ?? 0) + (nextScorer?.computeScoreIncrement(pastTurnsReversed) ?? 0)
}
謝謝!很好的解釋。 – Amit