9
我有兩個自定義NSManagedObject
類:Notes
和Tags
。爲什麼我無法在NSManagedObject子類中重寫isEqual?
當我重寫isEqual:
功能在Tags
類我得到這樣的錯誤消息:
「類‘標籤’的實體‘標籤’有NSManagedObject -isEqual的非法越權:」
這是怎麼發生的?
我有兩個自定義NSManagedObject
類:Notes
和Tags
。爲什麼我無法在NSManagedObject子類中重寫isEqual?
當我重寫isEqual:
功能在Tags
類我得到這樣的錯誤消息:
「類‘標籤’的實體‘標籤’有NSManagedObject -isEqual的非法越權:」
這是怎麼發生的?
你明確不允許覆蓋NSManagedObject -isEqual(見「方法你不能覆蓋」部分中的文檔上面)。核心數據基礎架構大量使用-isEqual,因此如果允許這樣做,您可能會在Core Data中引發大量問題。
根據你想在你的版本的-isEqual中做什麼,你可以將它移動到另一個方法或類。
您是否考慮過接受Michael Dixon的答案? – Besi