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

सी ++ में विरासत और दोस्ती

सी ++ में, दोस्ती विरासत में नहीं मिली है। इसका मतलब है कि, अगर एक पैरेंट क्लास में कुछ फ्रेंड फंक्शन हैं, तो चाइल्ड क्लास उन्हें फ्रेंड के रूप में नहीं मिलेगा।

इस उदाहरण में यह एक त्रुटि उत्पन्न करेगा क्योंकि डिस्प्ले () फ़ंक्शन MyBaseClass का मित्र है, लेकिन MyDerivedClass का मित्र नहीं है। डिस्प्ले () MyBaseClass के निजी सदस्य तक पहुंच सकता है।

उदाहरण

#include <iostream>
using namespace std;
class MyBaseClass {
   protected:
      int x;
   public:
      MyBaseClass() {
         x = 20;
      }
      friend void display();
};
class MyDerivedClass : public MyBaseClass {
   private:
      int y;
   public:
      MyDerivedClass() {
         x = 40;
      }
};
void display() {
   MyDerivedClass derived;
   cout << "The value of private member of Base class is: " << derived.x << endl;
   cout << "The value of private member of Derived class is: " << derived.y << endl;
}
main() {
   display();
}

आउटपुट

[Error] 'int MyDerivedClass::y' is private
[Error] within this context

  1. C++ में एकाधिक वंशानुक्रम

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

  1. सी ++ में कक्षाएं और वस्तुएं

    कक्षाएं सी ++ की प्रमुख विशेषताएं हैं क्योंकि वे ओओपीएस अवधारणाओं का समर्थन करती हैं और उपयोगकर्ता परिभाषित डेटा प्रकार हैं। कक्षाएं एक वस्तु के लिए विनिर्देश प्रदान करती हैं और इसमें डेटा चर के साथ-साथ एक पैकेज में डेटा में हेरफेर करने के लिए कार्य होते हैं। कक्षा परिभाषाएं क्लास की परिभाषा कीवर्ड

  1. C++ में फ्रेंड क्लास और फंक्शन

    किसी वर्ग के मित्र कार्य को उस वर्ग के दायरे से बाहर परिभाषित किया गया है लेकिन उसे कक्षा के सभी निजी और संरक्षित सदस्यों तक पहुंचने का अधिकार है। भले ही फ्रेंड फंक्शन के प्रोटोटाइप क्लास डेफिनिशन में दिखाई देते हैं, फ्रेंड्स मेंबर फंक्शन नहीं होते हैं। एक दोस्त एक फंक्शन, फंक्शन टेम्प्लेट, या मेंब