Это должна быть основной ошибкой, но я не могу видеть, что неправильно в этом коде:Неоднозначность ссылки на член «==»
.... object is some NSManagedObject ....
let eltType = ((object.valueForKey("type")! as! Int) == 0) ? .Zero : .NotZero
во время компиляции, я получаю сообщение:
Ambiguous reference to member '=='
Сравнение Int с 0 не кажется мне двусмысленным, так что мне не хватает?
Верно, что добавив тип, он работает. Но если вместо использования тернарного оператора я использую форму if() {...} else {...}, то он работает без типа. Я не совсем понимаю разницу. Информация, находящаяся в распоряжении компилятора для ввода типа, кажется одинаковой. – Michel
@Michel: Что такое оператор if/else, который работает без типа? –
Глядя снова на то, что я сделал, я мог бы дать тип в какой-то момент, когда объявляю переменную. Создание того, что вы написали правильно. – Michel