@H_301_8@
@H_301_8@
Core Data ensures that—in a given managed object context—an entry in a persistent store is associated with only one managed object.@H_301_8@
从这个角度来看,我的目的似乎是一个指针比较。或者使用isEqual来比较管理对象在同一个上下文中是否有意义?@H_301_8@解决方法 使用==来确定两个指针是否指向同一个对象。使用-isEqual来确定两个对象是否“相等”,其中相等的概念取决于被比较的对象。 -isEqual:通常比较-hash方法返回的值。我以前写过,如果两个管理对象包含相同的值,-isEqual似乎可能返回true。这显然是不正确的。在文档中有一些注意事项,确保可变对象的哈希值在集合中不会更改,并且知道给定对象是否在集合中可能很困难。看起来可以肯定的是,受管对象的散列不依赖于该对象所包含的数据,更有可能与该对象的不可变的连接;该对象的-objectID值似乎是可能的候选者。
@H_301_8@
考虑到这一点,我正在改变我的观点;-)。每个记录只能在给定的上下文中表示一次,所以==可能是安全的,但是-isEqual:似乎更好地表达了你的意图。@H_301_8@ 总结
以上是内存溢出为你收集整理的objective-c – 我应该使用==还是[NSManagedObject isEqual:]来比较同一上下文中的托管对象?全部内容,希望文章能够帮你解决objective-c – 我应该使用==还是[NSManagedObject isEqual:]来比较同一上下文中的托管对象?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)