如何在 Swift 中从 Error 转换为 CFError?

Bru*_*nha 1 swift

遇到 type 错误时Error,我发现在CFErrorXcode 不发出警告或编译错误的情况下将其转换为特别棘手。有人遇到过这个问题吗?

(使用 Xcode 11.0 和 Swift 5)

在此输入图像描述

在此输入图像描述

Bru*_*nha 5

根据https://developer.apple.com/documentation/corefoundation/cferror-ru8上的文档,CFError is toll-free bridged to NSError in the Foundation framework. 通过将 Error 转换为 NSError 而不是 CFError,我们解决了 Xcode 的警告和错误。我们还可以这样做:

let nserror = cfError as Error as NSError
Run Code Online (Sandbox Code Playgroud)