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

C++ डेराइव्ड क्लास में प्रोटेक्टेड मेंबर्स एक्सेस करना


C++ में एक क्लास में पब्लिक, प्राइवेट और प्रोटेक्टेड सेक्शन होते हैं जिनमें संबंधित क्लास मेंबर्स होते हैं। क्लास में प्रोटेक्टेड मेंबर्स प्राइवेट मेंबर्स के समान होते हैं क्योंकि उन्हें क्लास के बाहर से एक्सेस नहीं किया जा सकता। लेकिन उन्हें डेराइव्ड क्लास या चाइल्ड क्लास द्वारा एक्सेस किया जा सकता है जबकि प्राइवेट मेंबर्स नहीं कर सकते।

C++ में डेराइव्ड क्लास में प्रोटेक्टेड डेटा मेंबर्स को एक्सेस करने को प्रदर्शित करने वाला एक प्रोग्राम निम्नलिखित है −

उदाहरण

#include <iostream> using namespace std; class Base {    protected :    int num = 7; }; class Derived : public Base {    public :    void func() {       cout << "num का मान है: " << num;    } }; int main() {    Derived obj;    obj.func();    return 0; }

आउटपुट

उपरोक्त प्रोग्राम का आउटपुट निम्नलिखित है।

num का मान है: 7

अब, आइए उपरोक्त प्रोग्राम को समझते हैं।

क्लास Base में, डेटा मेंबर num है जो प्रोटेक्टेड है। क्लास Derived क्लास Base को इनहेरिट करती है। फंक्शन func() num का मान प्रिंट करता है। इसके लिए कोड स्निपेट निम्नलिखित है।

class Base {    protected :    int num = 7; }; class Derived : public Base {    public :    void func() {       cout << "num का मान है: " <<< num;    } };

main() फंक्शन में, Derived क्लास का ऑब्जेक्ट obj बनाया जाता है। फिर func() फंक्शन कॉल किया जाता है। इसके लिए कोड स्निपेट निम्नलिखित है।

int main() {    Derived obj;    obj.func();    return 0; }

  1. - C++ में पेरेंट क्लास से क्या-क्या इनहेरिट होता है?

    ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग में, हम पेरेंट क्लास की विशेषताओं को इनहेरिट कर सकते हैं। पेरेंट क्लास को बेस क्लास के रूप में जाना जाता है जबकि चाइल्ड क्लास को डेराइव्ड क्लास के रूप में जाना जाता है। डेराइव्ड क्लास बेस क्लास के डेटा मेंबर्स, मेंबर फंक्शन्स को इनहेरिट कर सकती है। यदि डेटा मेंबर्स पब्

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

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

  1. - C++ में private, public, और protected मोडिफायर्स में अंतर

    डेटा हाइडिंग ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग की महत्वपूर्ण विशेषताओं में से एक है जो प्रोग्राम के फ़ंक्शन्स को क्लास टाइप के आंतरिक प्रतिनिधित्व को सीधे एक्सेस करने से रोकती है। क्लास मेंबर्स तक एक्सेस प्रतिबंध को क्लास बॉडी के भीतर लेबल किए गए एक्सेस मोडिफायर्स - public, private, और protected सेक्श