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

C++ में व्युत्पन्न कक्षाओं में आभासी कार्य

सी ++ में वर्चुअल फ़ंक्शंस बेस क्लास पॉइंटर्स की सूची बनाने के लिए उपयोग करते हैं और किसी भी व्युत्पन्न वर्ग के कॉल विधियों को व्युत्पन्न क्लास ऑब्जेक्ट के प्रकार को जाने बिना भी उपयोग करते हैं। वर्चुअल फ़ंक्शंस को रनटाइम पर देर से हल किया जाता है।

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

उदाहरण कोड

#include<iostream>
using namespace std;
class B {
   public:
      virtual void s() {
         cout<<" In Base \n";
      }
};
class D: public B {
   public:
      void s() {
         cout<<"In Derived \n";
      }
};
int main(void) {
   D d; // An object of class D
   B *b= &d; // A pointer of type B* pointing to d
   b->s(); // prints"D::s() called"
   return 0;
}

आउटपुट

In Derived

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

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

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

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

  1. C++ में वेरिएबल के स्टोरेज क्लासेस क्या हैं?

    स्टोरेज क्लास एक C++ प्रोग्राम के भीतर वेरिएबल और/या फंक्शन्स के स्कोप (दृश्यता) और लाइफ-टाइम को परिभाषित करता है। ये विनिर्देशक उस प्रकार से पहले होते हैं जिसे वे संशोधित करते हैं। निम्नलिखित भंडारण वर्ग हैं, जिनका उपयोग C++ प्रोग्राम में किया जा सकता है। स्वतः पंजीकरण स्थिर बाहरी परिवर्तनीय सी