2
Swiftのスローと再スローの違いは何ですか?
それを把握するためにいくつかの参照を検索した後、私は間の違いを理解に関する有用な-and simple-説明を見つけることができませんでした-unfortunately-throwsとをrethrows。それらをどのように使用すべきかを理解しようとすると、ちょっと混乱します。 私はthrows、次のように、エラーを伝播するための最も単純な形式の-default-にある程度精通していることを述べておきます。 enum CustomError: Error { case potato case tomato } func throwCustomError(_ string: String) throws { if string.lowercased().trimmingCharacters(in: .whitespaces) == "potato" { throw CustomError.potato } if string.lowercased().trimmingCharacters(in: .whitespaces) == "tomato" { throw CustomError.tomato } } do { try throwCustomError("potato") } catch let error as CustomError { switch error …