इस पोस्ट में, हम C++ में कॉपी कंस्ट्रक्टर और असाइनमेंट ऑपरेटर के बीच अंतर को समझेंगे।
कॉपी कंस्ट्रक्टर
यह एक ओवरलोडेड कंस्ट्रक्टर है।
यह नए ऑब्जेक्ट को पहले से मौजूद ऑब्जेक्ट के डेटा/मान से इनिशियलाइज़ करता है।
इसका उपयोग तब किया जाता है जब किसी मौजूदा ऑब्जेक्ट की मदद से एक नया ऑब्जेक्ट बनाया जाता है।
ये दोनों ऑब्जेक्ट्स अलग-अलग मेमोरी लोकेशन में स्टोर होंगे।
यदि क्लास के अंदर कोई कॉपी कंस्ट्रक्टर परिभाषित नहीं है, तो कंपाइलर स्वयं एक प्रदान करता है।
असाइनमेंट ऑपरेटर
यह एक ऑपरेटर है।
यह एक ऑब्जेक्ट के मान को दूसरे ऑब्जेक्ट को असाइन करता है, जहां ये दोनों ऑब्जेक्ट्स पहले से ही मौजूद होते हैं।
इसका उपयोग तब किया जाता है जब किसी मौजूदा ऑब्जेक्ट को नए ऑब्जेक्ट को असाइन करना आवश्यक होता है।
इस ऑब्जेक्ट को स्टोर करने के लिए एक सिंगल मेमोरी लोकेशन उपयोग की जाती है।
लेकिन इस ऑब्जेक्ट की लोकेशन को इंगित करने के लिए कई रेफरेंस वेरिएबल्स उपयोग किए जाते हैं।
यदि इस ऑपरेटर को ओवरलोड नहीं किया जाता है, तो बिटवाइज कॉपी बनाई जाएगी।