Swift中的try-catch异常

可以在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!"];

}

回答:

它没有异常处理,并且在开发人员论坛中的讨论讨论了为什么会这样:

但请记住,可可和可可触控传统上并不打算让您捕获异常。他们打算让您不要将它们放在首位。普通错误应使用可选类型和inout

NSError参数处理;您应该通过编写更好的代码来解决任何导致断言失败的情况(这似乎是Swift中唯一的异常抛出机制)。

以上是 Swift中的try-catch异常 的全部内容, 来源链接: utcz.com/qa/401192.html

回到顶部