gpt4 book ai didi

swift - 是否可以在不声明的情况下在 Swift 中抛出 "RuntimeException"?

转载 作者:IT王子 更新时间:2023-10-29 05:16:28 26 4
gpt4 key购买 nike

我想从某个“深层”函数中抛出异常,因此它会冒泡到另一个函数,我想在其中捕获它。

f1 调用 f2 调用 f3 调用 ... fN 这可能会引发错误

我想从 f1 捕获错误。

我读到在 Swift 中我必须使用 throws 声明所有方法,并且还使用 try 调用它们。

但这很烦人:

enum MyErrorType : ErrorType {
case SomeError
}

func f1() {
do {
try f2()
} catch {
print("recovered")
}
}

func f2() throws {
try f3()
}

func f3() throws {
try f4()
}

...

func fN() throws {
if (someCondition) {
throw MyErrorType.SomeError
}
}

在 Java 中有没有类似 RuntimeException 的概念,其中 throws 不会一直泄漏到调用链上?

最佳答案

是的,这是可能的!

使用:fatalError("your message here") 抛出运行时异常

关于swift - 是否可以在不声明的情况下在 Swift 中抛出 "RuntimeException"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33977969/

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