Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ में सुपरक्लास कंस्ट्रक्टर कॉल करने के नियम

C++ में, हम कुछ क्लासेस डेराइव कर सकते हैं। कभी-कभी हमें डेराइव्ड क्लास के कंस्ट्रक्टर को कॉल करते समय सुपर क्लास (बेस क्लास) कंस्ट्रक्टर को कॉल करने की आवश्यकता होती है। Java के विपरीत सुपर क्लास के लिए कोई रेफरेंस वेरिएबल नहीं है। यदि कंस्ट्रक्टर नॉन-पैरामीट्राइज्ड है, तो यह डेराइव्ड क्लास के साथ स्वचालित रूप से कॉल हो जाएगा, अन्यथा हमें डेराइव्ड क्लास के इनिशियलाइज़र लिस्ट में सुपर क्लास कंस्ट्रक्टर को रखना होगा।

इस उदाहरण में पहले हम बिना आर्गुमेंट वाले कंस्ट्रक्टर को देखेंगे।

उदाहरण

#include <iostream>
using namespace std;

class MyBaseClass {
public:
    MyBaseClass() {
        cout << "Constructor of base class" << endl;
    }
};

class MyDerivedClass : public MyBaseClass {
public:
    MyDerivedClass() {
        cout << "Constructor of derived class" << endl;
    }
};

int main() {
    MyDerivedClass derived;
    return 0;
}

आउटपुट

Constructor of base class
Constructor of derived class

अब पैरामीटर लेने वाले कंस्ट्रक्टर को देखते हैं।

उदाहरण

#include <iostream>
using namespace std;

class MyBaseClass {
public:
    MyBaseClass(int x) {
        cout << "Constructor of base class: " << x << endl;
    }
};

class MyDerivedClass : public MyBaseClass {
    // बेस कंस्ट्रक्टर को इनिशियलाइज़र लिस्ट में
public:
    MyDerivedClass(int y) : MyBaseClass(50) {
        cout << "Constructor of derived class: " << y << endl;
    }
};

int main() {
    MyDerivedClass derived(100);
    return 0;
}

आउटपुट

Constructor of base class: 50
Constructor of derived class: 100
  1. - जावा 9 में Publisher इंटरफेस के नियम क्या हैं?

    एक Publisher  अपने सब्सक्राइबर्स से प्राप्त मांग के अनुसार क्रमबद्ध तत्वों की असीमित संख्या का प्रदाता है। Publisher<T> इंटरफेस प्रकार T के तत्वों को प्रकाशित करने के लिए जिम्मेदार है और सब्सक्राइबर्स को इससे जुड़ने के लिए एक subscribe() विधि प्रदान करता है। public interface Publishe

  1. - जावा 9 में Subscription इंटरफेस के नियम क्या हैं?

    एक Subscription  डेटा एक्सचेंज की मध्यस्थता के उद्देश्य से ठीक एक Publisher और एक Subscriber द्वारा साझा किया जा सकता है। यही कारण है कि subscribe() विधि निर्मित Subscription को वापस नहीं करती, बल्कि void लौटाती है। Subscription को केवल onSubscribe() विधि कॉलबैक के माध्यम से Subscriber को पास क

  1. - जावा 9 में Subscriber इंटरफेस के नियम क्या हैं?

    Subscriber  इंटरफेस onNext() विधि के माध्यम से आइटम प्राप्त करने के लिए पब्लिशर्स की सदस्यता लेता है, onError() विधि के माध्यम से त्रुटि संदेश, या onComplete() विधि के माध्यम से एक संकेत कि अब और आइटम की अपेक्षा नहीं की जाती है। उनमें से किसी भी चीज के होने से पहले, पब्लिशर onSubscription() विध