Swift switch-Anweisung berücksichtigt alle Fälle von Int, aber der Compiler zeigt immer noch den Fehler an
Ich verstehe, dass die switch-Anweisung in Swift vollständig sein muss, andernfalls müssen wir einen Standardfall angeben. Ich habe den folgenden Code online gesehen, die switch-Anweisung hat bereits alle Fälle in Int abgedeckt, aber der Compiler zeigt immer noch die Fehlermeldung an, dass switch erschöpfend sein muss. Erwägen Sie das Hinzufügen einer Standardklausel. Fehlt mir etwas?
extension Int {
enum Kind {
case Negative, Zero, Positive
}
var kind: Kind {
switch self {
case 0:
return .Zero
case let x where x > 0:
return .Positive
case let x where x < 0:
return .Negative
}
}
}