Skip to Main Content
iOS 编程基础:Swift、Xcode 和Cocoa 入门指南
book

iOS 编程基础:Swift、Xcode 和Cocoa 入门指南

by Matt Neuburg
January 2017
Intermediate to advanced content levelIntermediate to advanced
552 pages
9h 43m
Chinese
China Machine Press
Content preview from iOS 编程基础:Swift、Xcode 和Cocoa 入门指南
流程控制与其他
257
error
变量类型转换为了
NSError
,并使用
NSError
属性检查它。不过,你不必这么做;
相对于将捕获到的错误看作
NSError
,你可以将其看作
Swift
枚举。
对于常见的
Cocoa
错误类型,桥接枚举的名字就是
NSError
域的名字,同时
"Domain"
从其名字中删除。假设文件不存在,调用会抛出异常,我们捕获到了错误。这个
NSError
的域就是
"NSCocoaErrorDomain"
。因此,
Swift
会将其看作一个
NSCocoaError
枚举。此外,其代码是
260
,这在
Objective-C
表示的是
NSFileReadNoSuchFileError
,在
Swift
则表示
FileReadNoSuchFileError
枚举。因此,我们可以像下面这样捕获这个错误:
do {
let f = // path to some file, maybe
let s = try String(contentsOfFile: f, encoding: NSUTF8StringEncoding)
// ... if successful, do something with s ...
} catch NSCocoaError.FileReadNoSuchFileError {
print("no such file")
} catch {
print(error)
}
参见
Objective-C
中的
FoundationError.h
头文件来了解关于
Cocoa
内建标准错误域 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

机器学习实战:基于Scikit-Learn、Keras 和TensorFlow (原书第2 版)

机器学习实战:基于Scikit-Learn、Keras 和TensorFlow (原书第2 版)

Aurélien Géron
Swift 人工智能实战:从基础理论到AI 驱动的应用程序开发

Swift 人工智能实战:从基础理论到AI 驱动的应用程序开发

Mars Geldard, Jonathon Manning, Paris Buttfield-Addison, Tim Nugent

Publisher Resources

ISBN: 9787111556350