Avatar ·

Swift में == और === ऑपरेटरों में क्या अंतर है? शुरुआती लोगों के लिए विस्तृत व्याख्या

सभी को नमस्कार! मैंने अभी-अभी Swift सीखना शुरू किया है और भ्रम का सामना करना पड़ा। कोड में मैं दो ऑपरेटर देखता हूं: == और ===। पहली नज़र में वे एक ही काम करते हैं — मानों की तुलना करना। लेकिन मैंने देखा कि जब मैं उन्हें गलत तरीके से उपयोग करने की कोशिश करता हूं तो compiler कभी-कभी त्रुटि देता है। यहाँ एक उदाहरण है जो मुझे भ्रमित करता है: ```swift class Person { var name: String init(name: String) { self.name = name } } let person1 = Person(name: "Alice") let person2 = Person(name: "Alice") let person3 = person1 print(person1 == person2) // Error: binary operator '==' cannot be applied to operands of type 'Person' print(person1 === person2) // false print(person1 === person3) // true ``` क्यों `==` मेरी class के लिए बिल्कुल काम नहीं करता, जबकि `===` काम करता है लेकिन अलग-अलग परिणाम देता है?