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

C++ में मल्टीपल इनहेरिटेंस

मल्टीपल इनहेरिटेंस तब होता है जब कोई क्लास एक से अधिक बेस क्लास से इनहेरिट करती है। इसलिए क्लास मल्टीपल इनहेरिटेंस का उपयोग करके कई बेस क्लासेज से सुविधाएं इनहेरिट कर सकती है। यह C++ जैसी ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग भाषाओं की एक महत्वपूर्ण विशेषता है।

मल्टीपल इनहेरिटेंस को प्रदर्शित करने वाला एक डायग्राम नीचे दिया गया है:

C++ में मल्टीपल इनहेरिटेंस

उदाहरण

#include <iostream>
using namespace std;

class A {
public:
    int a = 5;
    A() {
        cout << "क्लास A के लिए कंस्ट्रक्टर" << endl;
    }
};

class B {
public:
    int b = 10;
    B() {
        cout << "क्लास B के लिए कंस्ट्रक्टर" << endl;
    }
};

class C: public A, public B {
public:
    int c = 20;
    C() {
        cout << "क्लास C के लिए कंस्ट्रक्टर" << endl;
        cout << "क्लास C, क्लास A और क्लास B से इनहेरिट करती है" << endl;
    }
};

int main() {
    C obj;
    cout << "a = " << obj.a << endl;
    cout << "b = " << obj.b << endl;
    cout << "c = " << obj.c << endl;
    return 0;
}

आउटपुट

क्लास A के लिए कंस्ट्रक्टर
क्लास B के लिए कंस्ट्रक्टर
क्लास C के लिए कंस्ट्रक्टर
क्लास C, क्लास A और क्लास B से इनहेरिट करती है
a = 5
b = 10
c = 20

उपरोक्त प्रोग्राम में, क्लासेस A और B परिभाषित हैं। क्लास C दोनों क्लासेस A और B से इनहेरिट करती है। यह मल्टीपल इनहेरिटेंस का एक उदाहरण है।

main() फ़ंक्शन में, क्लास C का एक ऑब्जेक्ट obj परिभाषित है। क्लास A, B और C के कंस्ट्रक्टर्स स्वचालित रूप से कॉल होते हैं और उनकी सामग्री प्रदर्शित होती है। फिर a, b और c के मान प्रिंट किए जाते हैं। ये क्लासेस A, B और C के डेटा मेंबर्स हैं।

  1. - C++ में नेस्टेड क्लासेस (Nested Classes)

    नेस्टेड क्लास क्या है? एक क्लास जो दूसरी क्लास के अंदर घोषित की गई हो। नेस्टेड क्लास बाहरी क्लास का सदस्य चर भी होती है और उसी एक्सेस अधिकार रखती है। हालांकि, बाहरी क्लास के सदस्य फ़ंक्शंस को नेस्टेड क्लास के सदस्यों का विशेष एक्सेस नहीं होता। C++ प्रोग्राम उदाहरण #include <iostream> using n

  1. - C++ में लोकल क्लास (Local Class)

    लोकल क्लास क्या है? एक फ़ंक्शन के अंदर घोषित क्लास को लोकल क्लास कहते हैं क्योंकि यह उस फ़ंक्शन के लिए स्थानीय (local) होती है। बेसिक उदाहरण #include <iostream> using namespace std; void func() { class LocalClass { }; } int main() { return 0; } नियम और प्रतिबंध लोकल क्लास का नाम

  1. - C# में Inheritance (इनहेरिटेंस) क्या है?

    C# में इनहेरिटेंस (विरासत) इनहेरिटेंस एक मैकेनिज्म है जहां एक **डेराइव्ड क्लास** (चाइल्ड) **बेस क्लास** (पैरेंट) के मेंबर्स (फील्ड्स, मेथड्स, प्रॉपर्टीज) प्राप्त करती है। यह कोड पुन: उपयोग, एक्सटेंसिबिलिटी और पॉलीमॉर्फिज्म को सक्षम करता है। मुख्य अवधारणाएं सिंगल इनहेरिटेंस: एक क्लास केवल **एक** बे