Unterschied zwischen == und === in Swift
Hallo zusammen! Könnt ihr mir bitte erklären, was der grundlegende Unterschied zwischen den Operatoren == und === in Swift ist? Ich verstehe, dass beide zum Vergleichen verwendet werden, aber wenn ich versuche, zwei Instanzen einer Klasse zu vergleichen, weicht das Ergebnis von meiner Erwartung ab.
Hier ist ein Beispielcode, der mich verwirrt:
class Person {\n var name: String\n init(name: String) {\n self.name = name\n }\n}\n\nlet person1 = Person(name: "Alice")\nlet person2 = Person(name: "Alice")\n\nprint(person1 == person2) // Compiler-Fehler: Binary operator '==' cannot be applied to two 'Person' operands\nprint(person1 === person2) // false\n\nlet person3 = person1\nprint(person1 === person3) // trueIch hatte erwartet, dass person1 == person2 true zurückgibt, a