কম্পিউটার

C++ এ কনস্ট্রাক্টর ওভারলোডিং


আমরা জানি যে ফাংশন ওভারলোডিং হল অবজেক্ট ওরিয়েন্টেড ল্যাঙ্গুয়েজের অন্যতম প্রধান বৈশিষ্ট্য। আমরা ফাংশনগুলির একই নাম ব্যবহার করতে পারি; যার প্যারামিটার সেট ভিন্ন। এখানে আমরা দেখব কিভাবে C++ ক্লাসের কনস্ট্রাক্টর ওভারলোড করা যায়। কনস্ট্রাক্টর ওভারলোডিং এর কিছু গুরুত্বপূর্ণ ধারণা আছে।

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

উদাহরণ

#include <iostream>
using namespace std;

class Rect{
   private:
   int area;
   public:
   Rect(){
      area = 0;
   }
   Rect(int a, int b){
      area = a * b;
   }
   void display(){
      cout << "The area is: " << area << endl;
   }
};

main(){
   Rect r1;
   Rect r2(2, 6);
   r1.display();
   r2.display();
}

আউটপুট

The area is: 0
The area is: 12

  1. C++ এ সমান্তরালগ্রামের ক্ষেত্রফল বের করার প্রোগ্রাম

  2. C++ এ আয়তক্ষেত্র এলাকা

  3. C++ এ একটি সমান্তরালগ্রামের ভিতরে একটি ত্রিভুজের ক্ষেত্রফল

  4. C++ এ একটি বর্গক্ষেত্রের একটি পরিক্রমাকৃত বৃত্তের ক্ষেত্রফল