我有一些Swift代码要扩展CGPoint:
extension CGPoint: Hashable {
public var hashValue:Int {
return self.x.hashValue ^ self.y.hashValue
}
}
Run Code Online (Sandbox Code Playgroud)
第一行产生Xcode错误,'CGPoint'与协议'Hashable'的冗余一致性:
但这并不多余.稍后在我的Swift文件中的以下代码行依赖于它:
private var borderPoints:Set<CGPoint>?
Run Code Online (Sandbox Code Playgroud)
因为它代码构建并运行良好,即我可以忽略Xcode错误消息.如果我注意到错误消息并删除了协议一致性(Xcode认为是多余的),我的代码无法构建,Xcode会给出错误类型'CGPoint'不符合协议'Hashable':
由于我的代码现在没有构建,这是一个我必须解决的错误,即我必须包含Xcode早先抱怨的协议一致性.
Swift是一种新语言,所以我不介意太多,如果这只是Xcode对扩展和协议一致性的理解中的一个错误,但我想关闭错误信息.我知道如何为整个项目关闭它们但是什么是Swift代码pragma才能将此错误消息关闭为此行?
| 归档时间: |
|
| 查看次数: |
359 次 |
| 最近记录: |