【发布时间】:2016-06-15 12:01:46
【问题描述】:
我知道如何创建自己的错误并在 Swift 中使用 throws 关键字触发它们。我不明白如何复制在其他语言(或 Ruby rescue)中发现的常规 try - catch 以处理未处理的异常。
示例(在 Swift 中):
func divideStuff(a: Int, by: Int) -> Int {
return a / by
}
let num = divideStuff(4, by: 0) //divide by 0 exception
下面是我在 C# 中的处理方式,例如:
int DivideStuff(int a, int b) {
int result;
try {
result = a / b;
}
catch {
result = 0;
}
return result;
}
如何使用 Swift 实现同样的目标?
【问题讨论】:
-
这是
do..catch在文档中:developer.apple.com/library/ios/documentation/Swift/Conceptual/… -
您无法使用 try/catch 捕获任意运行时异常(例如除以零),比较 stackoverflow.com/questions/34628999/… 的类似问题和文档链接。