कंस्ट्रक्टर क्या है?
कंस्ट्रक्टर क्लास का विशेष सदस्य फ़ंक्शन है जो ऑब्जेक्ट बनने पर स्वचालित रूप से 실행 होता है। क्लास के समान नाम, कोई रिटर्न टाइप नहीं। सदस्यों को प्रारंभिक मान देने के लिए उपयोगी।
डिफॉल्ट कंस्ट्रक्टर
कोई पैरामीटर नहीं लेता। यदि प्रोग्रामर परिभाषित न करे तो कंपाइलर अंतर्निहित डिफॉल्ट कंस्ट्रक्टर प्रदान करता है (सदस्यों को 0/NULL से आरंभ करता है)।
C++ प्रोग्राम उदाहरण
#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 से आरंभ करता है। display() फ़ंक्शन मान प्रिंट करता है।
मुख्य फ़ंक्शन
DemoDC प्रकार का ऑब्जेक्ट बनाता है (कंस्ट्रक्टर स्वचालित कॉल होता है), फिर display() कॉल करता है।
महत्वपूर्ण बिंदु
- डिफॉल्ट कंस्ट्रक्टर का उपयोग ऑब्जेक्ट को वैध प्रारंभिक स्थिति में लाने के लिए किया जाता है
- यदि कोई कंस्ट्रक्टर परिभाषित नहीं है, तो कंपाइलर एक खाली डिफॉल्ट कंस्ट्रक्टर बनाता है
- एक बार पैरामीट्रिक कंस्ट्रक्टर परिभाषित हो जाने पर, कंपाइलर डिफॉल्ट कंस्ट्रक्टर नहीं बनाता (यदि चाहिए तो स्पष्ट रूप से परिभाषित करना पड़ता है)