Я расстраиваюсь тем, как Swift обрабатывает равенство. Или я просто что-то пропустил. Почему эти 2 indexOf
НЕ работают одинаково?Swift indexOf, == оператор override не получает вызов
let first = self.objects.indexOf(object) //This returns nil
let second = self.objects.indexOf{$0 == object} //This returns the index
Мой == переопределение:
func ==(lhs: MyObject, rhs: MyObject) -> Bool {
return lhs.someProperty == rhs.someProperty
}
== переопределение не дозвонились в первом IndexOf. Почему это так? Это действительно опасно.
(MyObject подкласс PFObject (Parse.com объектов). Я не знаю, если это то, что Мессинг это.)
Является '' self.object' [MyObject] 'или что-то другое (например,' [ParentOfMyObject] ') – zneak