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

C++ में वर्चुअल फ़ंक्शंस कैसे कार्यान्वित किए जाते हैं?

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

यहाँ C++ प्रोग्राम में वर्चुअल फंक्शन का कार्यान्वयन है -

उदाहरण

#include <iostream>
using namespace std;
class B {
   public:
      virtual void s() { //virtual function 
         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 variable of type B* pointing to d
   b->s(); // prints"D::s() called"
   return 0;
}

आउटपुट

In Derived

  1. स्थिर C++ वर्ग के सदस्यों को कब प्रारंभ किया जाता है?

    Static C++ वर्ग के सदस्यों को स्थिर कीवर्ड का उपयोग करके परिभाषित किया जा सकता है। एक वर्ग में स्थिर सदस्य सभी वर्ग वस्तुओं द्वारा साझा किया जाता है क्योंकि स्मृति में स्थिर वर्ग के सदस्य की केवल एक प्रति होती है, चाहे कक्षा की वस्तुओं की संख्या कितनी भी हो। स्टैटिक क्लास मेंबर को शून्य से इनिशियला

  1. सी ++ में कार्यों को ऑब्जेक्ट्स कैसे पास करें?

    कार्यों के लिए वस्तुओं को पारित करने के चार तरीके हैं। मान लेते हैं कि आपके पास कक्षा X है और आप इसे फंक्शन फन में पास करना चाहते हैं, फिर - मूल्य से गुजरें यह फ़ंक्शन स्कोप में ऑब्जेक्ट की उथली स्थानीय प्रतिलिपि बनाता है। जिन चीज़ों को आप यहाँ संशोधित करते हैं, वे उसे पास की गई वस्तु में दिखाई नही

  1. C# में वर्चुअल फंक्शन क्या हैं?

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