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

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. সি++-এ সমান্তরাল চতুর্ভুজের (Parallelogram) ক্ষেত্রফল বের করার প্রোগ্রাম

  2. C++-এ আয়তক্ষেত্রের এলিয়া হিসাব

  3. প্যারালেলোগ্রামের ভিতরে ত্রিভুজের ক্ষেত্রফল C++-এ

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