কম্পিউটার

C++ এ ডিফল্ট কনস্ট্রাক্টর


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

ডিফল্ট কনস্ট্রাক্টররা কোন প্যারামিটার নেয় না। যদি একটি ডিফল্ট কনস্ট্রাক্টর প্রোগ্রামার দ্বারা স্পষ্টভাবে প্রদান করা না হয়, তাহলে কম্পাইলার একটি অন্তর্নিহিত ডিফল্ট কনস্ট্রাক্টর প্রদান করে। সেক্ষেত্রে, ভেরিয়েবলের ডিফল্ট মান 0।

একটি প্রোগ্রাম যা ডিফল্ট কনস্ট্রাক্টর প্রদর্শন করে তা নিম্নরূপ দেওয়া হল।

উদাহরণ

#include <iostream>
using namespace std;
class DemoDC {
   private:
   int num1, num2 ;
   public:
   DemoDC() {
      num1 = 10;
      num2 = 20;
   }
   void display() {
      cout<<"num1 = "<< num1 <<endl;
      cout<<"num2 = "<< num2 <<endl;
   }
};
int main() {
   DemoDC obj;
   obj.display();
   return 0;
}

আউটপুট

num1 = 10
num2 = 20

উপরের প্রোগ্রামে, DemoDC ক্লাসে একটি ডিফল্ট কনস্ট্রাক্টর রয়েছে যা num1 এবং num2 কে 10 এবং 20 হিসাবে আরম্ভ করে। এটিতে একটি ফাংশন ডিসপ্লে()ও রয়েছে যা num1 এবং num2 এর মান প্রিন্ট করে। এর জন্য কোড স্নিপেট নিম্নরূপ দেওয়া হয়েছে।

class DemoDC {
   private:
   int num1, num2
   public:
   DemoDC() {
      num1 = 10;
      num2 = 20;
   }
   void display() {
      cout<<"num1 = "<< num1 <<endl;
      cout<<"num2 = "<< num2 <<endl;
   }
};

ফাংশন main() ক্লাস টাইপ DemoDC অবজেক্টের জন্য অবজেক্ট সংজ্ঞা ধারণ করে। তারপর ফাংশন display() বলা হয়। এটি নীচে দেখানো হয়েছে৷

DemoDC obj;
obj.display();

  1. C++ এ কন্সট্রাক্টর কপি করুন

  2. C++ এ কনস্ট্রাক্টর

  3. কিভাবে C++ এ কনস্ট্রাক্টরের ভিতরে একটি ভার্চুয়াল ফাংশন কল করবেন?

  4. লিনাক্সে C++ এর সেরা IDE কি?