微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

swift – 类型’错误’不符合协议’RawRepresentable’

将我的游乐场代码更改为 Swift 3,Xcode建议更改
enum Error: ErrorType {
    case NotFound
}

enum Error: Error {
    case NotFound
}

但现在我得到标题错误,我不知道如何使枚举符合该协议.

问题是你已经将错误类型命名为Error – 这与标准库Error协议冲突(因此Swift认为你有一个循环引用).

您可以将Swift错误协议称为Swift.Error以消除歧义:

enum Error : Swift.Error {
    case NotFound
}

但这意味着模块中将来对Error的任何引用都将引用您的Error类型,而不是Swift Error协议(您必须再次消除歧义).

因此,到目前为止最简单的解决方案是将错误类型重命名为更具描述性的内容.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐