কম্পিউটার টিউটোরিয়াল

সি++-এ কপি কনস্ট্রাক্টর (Copy Constructor) এবং অ্যাসাইনমেন্ট অপারেটর (Assignment Operator)-এর পার্থক্য

এই পোস্টে, আমরা সি++-এ কপি কনস্ট্রাক্টর (Copy Constructor) এবং অ্যাসাইনমেন্ট অপারেটর (Assignment Operator)-এর মধ্যে পার্থক্য বুঝব।

কপি কনস্ট্রাক্টর (Copy Constructor)

  • এটি একটি ওভারলোডেড কনস্ট্রাক্টর।
  • এটি ইতিমধ্যে বিদ্যমান একটি অবজেক্টের ডেটা/মান দিয়ে নতুন অবজেক্টটি ইনিশিয়ালাইজ করে।
  • যখন কোনো বিদ্যমান অবজেক্টের সাহায্যে নতুন অবজেক্ট তৈরি করা হয়, তখন এটি ব্যবহার হয়।
  • এই দুটি অবজেক্ট আলাদা মেমরি লোকেশনে সংরক্ষিত হয়।
  • যদি ক্লাসে কোনো কপি কনস্ট্রাক্টর ডিফাইন করা না থাকে, তবে কম্পাইলার নিজে একটি সরবরাহ করে।

অ্যাসাইনমেন্ট অপারেটর (Assignment Operator)

  • এটি একটি অপারেটর।
  • এটি একটি অবজেক্টের মান অন্য একটি অবজেক্টে অ্যাসাইন করে, যেখানে দুটি অবজেক্টই ইতিমধ্যে বিদ্যমান থাকে।
  • যখন একটি বিদ্যমান অবজেক্টকে নতুন অবজেক্টে অ্যাসাইন করতে হয়, তখন এটি ব্যবহার হয়।
  • এখানে একটি মেমরি লোকেশন ব্যবহার হয় এই অবজেক্ট সংরক্ষণের জন্য।
  • কিন্তু একাধিক রেফারেন্স ভেরিয়েবল এই অবজেক্টের লোকেশনে পয়েন্ট করে।
  • যদি এই অপারেটর ওভারলোড করা না থাকে, তবে বিটওয়াইজ কপি (bitwise copy) তৈরি হয়।
  1. C++-এ অ্যাসাইনমেন্ট অপারেটর এবং কপি কনস্ট্রাক্টরের পার্থক্য কী?

  2. C++-এ রিলেশনাল অপারেটর (==) এবং std::string::compare() এর পার্থক্য

  3. C++-এ ডট (.) অপারেটর এবং -> (অ্যারো) অপারেটরের পার্থক্য

  4. PHP-এ !== এবং ==! অপারেটরের পার্থক্য