【发布时间】:2012-10-23 09:56:34
【问题描述】:
我正在将一些 C++ 代码转录成 ObjC。我正在查看的 operator==() 将其私有成员一一进行比较,并在它们都为真时返回真。
ObjC 中 operator==() 的等效实现是什么?
通过浏览,我在 ObjC 中看到:
- -isEqual
- -isEqualTo
- -喜欢
- ==(内置?不可覆盖?)
- 还有其他我错过了吗?
这些方法的协议是什么? (深度比较或浅比较等...?)我应该使用哪一个来替换比较其所有成员的 operator==()?
【问题讨论】:
-
==只会比较 2 个对象的指针。就这么简单,你不能覆盖它。您必须创建自己的方法来比较自己的类。 -
这里对
isEqual:和hash的一些讨论:stackoverflow.com/questions/1112373/… -
@Monolo +1 获取有用的链接 - ty
标签: c++ objective-c operators