【发布时间】:2014-07-24 06:11:19
【问题描述】:
是否可以在 Swift 中捕获异常?给定以下代码:
NSException.raise(NSRangeException,
format: "Now you've gone too far!",
arguments: CVaListPointer(fromUnsafePointer: UnsafePointer()))
是否可以防止异常使整个程序崩溃?也就是说,Objective-C 中的 Swift 等价物是什么:
@try {
[NSException raise:NSRangeException format:@"Now you've gone too far!"];
}
【问题讨论】:
-
这个答案也可能有帮助:stackoverflow.com/a/24010741/1249958
-
对不起,在提交重复问题之前应该更努力地搜索!
-
您可以按照本文中的说明为 Swift 添加 try-catch 支持:medium.com/@_willfalcon/adding-try-catch-to-swift-71ab27bcb5b8
-
@WilliamFalcon,把它作为答案。有时您必须与抛出异常的 ObjC 库进行交互,您的方法似乎是唯一的方法。
-
在 swift 2.0 中是可能的