gpt4 book ai didi

带绑定(bind)的 Swift catch 枚举大小写

转载 作者:行者123 更新时间:2023-12-05 02:05:46 24 4
gpt4 key购买 nike

如果我有自定义错误

enum MyError: Error {
case error1
case error2
}

我可以捕获该类型的所有错误并绑定(bind)一个变量:

do {
} catch let e as MyError {
} catch {
// everything else
}

或者我可以在不绑定(bind)变量的情况下捕获特定错误

do {
} catch MyError.error1 {
} catch {
// everything else, including MyError.error2
}

但我如何捕获特定错误绑定(bind)变量?

最佳答案

如果我理解正确的话,您希望 catch 中的变量是特定类型错误的特定错误情况。

如果是这样,你可以这样做:

do {
try something()
} catch let err1 as MyError where err1 == .error1 {
print(err1)
} catch {
print(error)
}

关于带绑定(bind)的 Swift catch 枚举大小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63153601/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com