首页 > 解决方案 > 如何在 Swift 中从 Error 转换为 CFError?

问题描述

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

(使用 Xcode 11.0 和 Swift 5)

在此处输入图像描述

在此处输入图像描述

标签: swift

解决方案


根据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

推荐阅读