NSError 代码检查:二元运算符 '==' 不能应用于两个 Int 操作数
NSError code check: Binary operator '==' cannot be applied to two Int operands
有人可以告诉我我做错了什么吗? "error" 是从 CloudKit.
返回的 NSError
if error.code == Int(CKErrorCode.NetworkFailure) {
//do something
}
给我这个错误:
Binary operator '==' cannot be applied to two Int operands
如果我这样做,效果很好:
if error.code == 4 {
//do something
}
其中 4 是实际的错误代码。
这里的问题是 Int
没有将 CKErrorCode
作为输入的构造函数。
如评论中所述,比较两个值的方法是:
if error.code == CKErrorCode.NetworkFailure.rawValue {
//do something
}
值得庆幸的是,XCode 7 和 Swift 2 的错误消息已得到改进,因此您会看到:
Cannot invoke initializer for type 'Int' with an argument list of type '(CKErrorCode)'
哪个能更好地指示出了什么问题。
有人可以告诉我我做错了什么吗? "error" 是从 CloudKit.
返回的 NSErrorif error.code == Int(CKErrorCode.NetworkFailure) {
//do something
}
给我这个错误:
Binary operator '==' cannot be applied to two Int operands
如果我这样做,效果很好:
if error.code == 4 {
//do something
}
其中 4 是实际的错误代码。
这里的问题是 Int
没有将 CKErrorCode
作为输入的构造函数。
如评论中所述,比较两个值的方法是:
if error.code == CKErrorCode.NetworkFailure.rawValue {
//do something
}
值得庆幸的是,XCode 7 和 Swift 2 的错误消息已得到改进,因此您会看到:
Cannot invoke initializer for type 'Int' with an argument list of type '(CKErrorCode)'
哪个能更好地指示出了什么问题。