Ram*_*sel 3 core-foundation swift swift3
将我们的代码库转换为Swift 3,我遇到了这个问题:
ABAddressBookRequestAccessWithCompletion(addressBookRef) { (granted: Bool, error: CFError?) in
DispatchQueue.main.async {
if let nsError = error as NSError {
...
}
}
}
Run Code Online (Sandbox Code Playgroud)
编译器错误是:
Cannot convert value of type 'CFError?' to type 'NSError' in coercion
改为:
if let nsError = error as? NSError { ... }
Run Code Online (Sandbox Code Playgroud)
发出警告: Cast from 'CFError?' to unrelated type 'NSError' always fails
不要试图通过NSError.直接强制错误,Swift类型.
if let err = error as? Error {
print(err) // no problem
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
999 次 |
最近记录: |