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

सी ++ व्युत्पन्न कक्षा में संरक्षित सदस्यों तक पहुंचना


C++ में एक वर्ग में सार्वजनिक, निजी और संरक्षित वर्ग होते हैं जिनमें संबंधित वर्ग के सदस्य होते हैं। एक वर्ग में संरक्षित सदस्य निजी सदस्यों के समान होते हैं क्योंकि उन्हें कक्षा के बाहर से एक्सेस नहीं किया जा सकता है। लेकिन उन्हें व्युत्पन्न कक्षाओं या बाल वर्गों द्वारा एक्सेस किया जा सकता है जबकि निजी सदस्य नहीं कर सकते।

एक प्रोग्राम जो C++ में एक व्युत्पन्न वर्ग में संरक्षित डेटा सदस्यों तक पहुँचने को प्रदर्शित करता है, वह इस प्रकार दिया गया है -

उदाहरण

#include <iostream>
using namespace std;
class Base {
   protected :
   int num = 7;
};
class Derived : public Base {
   public :
   void func() {
      cout << "The value of num is: " << num;
   }
};
int main() {
   Derived obj;
   obj.func();
   return 0;
}

आउटपुट

उपरोक्त कार्यक्रम का आउटपुट इस प्रकार है।

The value of num is: 7

अब, उपरोक्त कार्यक्रम को समझते हैं।

क्लास बेस में, डेटा सदस्य संख्या है जो संरक्षित है। व्युत्पन्न वर्ग को वर्ग आधार विरासत में मिला है। फ़ंक्शन func () संख्या के मान को प्रिंट करता है। इसके लिए कोड स्निपेट इस प्रकार दिया गया है।

class Base {
   protected :
   int num = 7;
};
class Derived : public Base {
   public :
   void func() {
      cout << "The value of num is: " <<< num;
   }
};

फ़ंक्शन मुख्य () में, व्युत्पन्न वर्ग का ऑब्जेक्ट ओबीजे बनाया जाता है। फिर फ़ंक्शन func() कहा जाता है। इसके लिए कोड स्निपेट इस प्रकार दिया गया है।

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

  1. सी ++ में मूल वर्ग से सभी को क्या विरासत में मिला है?

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

  1. सी ++ में स्थानीय कक्षा

    किसी फ़ंक्शन के अंदर घोषित एक वर्ग को C++ में स्थानीय वर्ग के रूप में जाना जाता है क्योंकि यह उस फ़ंक्शन के लिए स्थानीय होता है। स्थानीय वर्ग का एक उदाहरण इस प्रकार दिया गया है। #include<iostream> using namespace std; void func() {    class LocalClass {    }; } int main()

  1. C++ में निजी, सार्वजनिक और संरक्षित संशोधक के बीच अंतर

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