Ich habe gerade angefangen, Swift vor ein paar Tagen zu lernen. In meinem Xcode Spielplatz habe ich den folgenden Code:Swift 2.2 Fehlerbehandlung durch Versuch Block
//: Playground - noun: a place where people can play
import UIKit
enum VendingMachineError: ErrorType {
case InvalidSelection
case InsufficientFunds(coinsNeeded: Int)
case OutOfStock
}
func requestBeverage(code: Int, coins: Int) throws {
guard code > 0 else {
throw VendingMachineError.InvalidSelection
}
if coins < 2 {
throw VendingMachineError.InsufficientFunds(coinsNeeded: 3)
}
guard coins > 10 else {
throw VendingMachineError.OutOfStock
}
print("everything went ok")
}
try requestBeverage(-1, coins: 4)
print("finished...")
Wenn ich versuche, es auszuführen, passiert nichts. aber ich würde erwarten zu drucken "fertig ...", weil in meiner Logik, es versucht, etwas zu tun, scheitert, dann würde das Programm weiter ...
So ist die Frage, warum nicht das Programm fortgesetzt wird und wie kann ich den Code im Fehlerfall mit so wenig Worten wie möglich weitermachen?
Vielen Dank im Voraus
ist „ging alles ok“ print ed? – glace
@glace-Nr. ...... – OWADVL
Sind Sie sicher, dass es Swift 3 ist? Swift 3 ist, soweit ich weiß, noch nicht einmal in der Beta-Phase (es wird nach der WWDC 2016 sein und wird wahrscheinlich gegen September veröffentlicht). Es ist wahrscheinlich Swift 2.2 (die aktuelle Version). – FreeNickname