mod*_*che 28 exception try-catch swift
是否有可能在Swift中捕获异常?给出以下代码:
NSException.raise(NSRangeException,
format: "Now you've gone too far!",
arguments: CVaListPointer(fromUnsafePointer: UnsafePointer()))
Run Code Online (Sandbox Code Playgroud)
是否可以防止异常崩溃整个程序?也就是说,Objective-C中Swift等效的是以下内容:
@try {
[NSException raise:NSRangeException format:@"Now you've gone too far!"];
}
Run Code Online (Sandbox Code Playgroud)
man*_*lds 10
它没有异常处理,开发人员论坛中的讨论讨论了为什么会这样:
但请记住,Cocoa和Cocoa Touch传统上并不打算捕获异常; 他们打算让你不要让他们被抛在一起.应使用可选类型和inout NSError参数处理普通错误; 你应该通过编写更好的代码来解决导致断言失败的任何情况(这似乎是Swift中唯一的异常抛出机制).
| 归档时间: |
|
| 查看次数: |
42980 次 |
| 最近记录: |