संभव डुप्लिकेट:
Why must we define both == and != in C#?ओवरलोडिंग + =, +, ==, और = ऑपरेटरों
क्यों केवल लोगों के लिए + अधिक भार से + = संभव के अधिक भार है, लेकिन == और! = अलग से अधिभारित हैं?
ऐसा लगता है कि इसे उलटा होना चाहिए।
+ = ओवरलोडिंग लगभग अधिक प्रभावी लिखना हमेशा संभव है क्योंकि नई वस्तु के लिए स्मृति आवंटित करना अनावश्यक है। लेकिन मैं एक उदाहरण का आविष्कार नहीं कर सकता जिसमें ऑपरेटरों == और! = परिणाम को समान रूप से छोड़कर कुछ अलग होना चाहिए()।
+1 बस पागलपन की कल्पना करें यदि आप '+' और '+ =' अलग से लोड कर सकते हैं ... –
यदि सी # और .net ने परिवर्तनीय संरचनाओं के साथ बुरी चीजें नहीं की हैं (उत्परिवर्तनीय structs बुरा नहीं हैं - कुछ चीजें .net उनके साथ होती हैं), या यदि उन्होंने कक्षाओं को उनके ऑब्जेक्ट्स के संदर्भों के बुरे विचित्र साझाकरण को प्रतिबंधित करने की अनुमति दी है, तो यह अलग-अलग + = और + ऑपरेटरों के लिए उपयोगी होगा, क्योंकि "+" ऑपरेटर का उपयोग करने से संकेत मिलेगा मूल अनछुए की प्रतिलिपि बनाकर छोड़ दें, जबकि "+ =" का अर्थ है मूल को संशोधित किया जा सकता है। नोट, बीटीडब्ल्यू, वह घटनाएं "+ =" और "- =" का समर्थन करती हैं, लेकिन "+" और "-" का समर्थन नहीं करती हैं। – supercat