Verwenden Sie den logischen Operator als Mähdrescher in redu

Ich versuche, ein Array von @ zu reduzierBools durch Anwenden des logischen OperatorsODE (||) mit dem folgenden Code, jedoch erhalte ich eine Fehlermeldung:

func reduceBools(values: [Bool]) -> Bool {
    return values.reduce(false, combine: ||)
}

Mehrdeutiger Verweis auf Mitglied '||'

Analogerweise funktioniert der Code für ganze Zahlen wie ein Zauber.

func reduceInts(values: [Int]) -> Int {
    return values.reduce(0, combine: +)
}

Ich konnte es zum Laufen bringen, indem ich ein @ hinzufüg|| -Funktion (Code unten) oder mit einem{ $0 || $1 } Closure, aber ich mag diese Ansätze nicht und würde es vorziehen, einfach den Operator zu übergeben.

func ||(lhs: Bool, rhs: Bool) -> Bool {
    return lhs || rhs
}

Das gleiche passiert für das logischeUN (&&) Operator

Wie kann ich es zum Laufen bringen, ohne den obigen Hack zu benutzen?

Antworten auf die Frage(10)

Ihre Antwort auf die Frage