如何测试对象是否是另一个对象

时间:2014-07-15 04:49:56

标签: objective-c pointers swift

在目标c中,我可以测试一个对象是否与另一个对象相同,通过测试它们的指针等效性

- (BOOL) isSelected: (SomeObject *)object
{
    return object == theSelectedOne
}

假设theSelectedOne是SomeObject *。这有可能是迅速的,还是我应该做出识别属性。

1 个答案:

答案 0 :(得分:2)

Swift中的对象标识是使用===完成的。

来自 Swift编程语言>类和结构

请注意,“与...相同”(由三个等号或===表示)并不代表“等于”(由两个等号或==表示)相同的事物:

  • “与...相同”表示类类型的两个常量或变量指的是完全相同的类实例。
  • “Equal to”意味着两个实例在值上被视为“相等”或“等效”,对于某些适当的“等于”含义,由类型设计者定义。