gpt4 book ai didi

ios - 对成员 '==' 的模糊引用

转载 作者:IT王子 更新时间:2023-10-29 05:07:24 26 4
gpt4 key购买 nike

这一定是一个基本错误,但我看不出这段代码有什么问题:

.... object is some NSManagedObject ....
let eltType = ((object.valueForKey("type")! as! Int) == 0) ? .Zero : .NotZero

在编译时,我收到这条消息:

Ambiguous reference to member '=='

将 Int 与 0 进行比较对我来说似乎没有歧义,那么我错过了什么?

最佳答案

错误信息具有误导性。问题是编译器有没有信息 .Zero.NotZero 指的是什么类型。

该问题也与托管对象或 valueForKey 无关方法,你会得到相同的错误信息

func foo(value: Int) {
let eltType = value == 0 ? .Zero : .NotZero // Ambiguous reference to member '=='
// ...
}

这个问题可以通过指定一个完全类型化的值来解决

let eltType = value == 0 ? MyEnum.Zero : .NotZero

或者通过提供编译器可以推断类型的上下文:

let eltType: MyEnum = value == 0 ? .Zero : .NotZero

关于ios - 对成员 '==' 的模糊引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38449252/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com