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

C++ में वर्चुअल फंक्शन


इस ट्यूटोरियल में, हम C++ में वर्चुअल फंक्शन को समझने वाले प्रोग्राम पर चर्चा करेंगे।

वर्चुअल फंक्शन बेस क्लास में परिभाषित एक मेंबर फंक्शन है जिसे चाइल्ड क्लास में आगे भी परिभाषित किया जा सकता है। डेराइडेड क्लास को कॉल करते समय, ओवरराइडन फंक्शन को कॉल किया जाएगा।

उदाहरण

#include <iostream> using namespace std; class base {    public:    virtual void print(){       cout << "print base class" << endl;    }    void show(){       cout << "show base class" << endl;    } }; class derived : public base {    public:    void print(){       cout << "print derived class" << endl;    }    void show(){       cout << "show derived class" << endl;    } }; int main(){    base* bptr;    derived d;    bptr = &d;    //वर्चुअल फंक्शन कॉल करना    bptr->print();    //नॉन-वर्चुअल फंक्शन कॉल करना    bptr->show(); }

आउटपुट

print derived class show base class

  1. - C++ में स्ट्रक्चर बनाम क्लास

    C++ में स्ट्रक्चर और क्लास मूल रूप से समान हैं। लेकिन कुछ मामूली अंतर हैं। ये अंतर नीचे दिए गए हैं। क्लास के सदस्य डिफ़ॉल्ट रूप से प्राइवेट होते हैं, लेकिन स्ट्रक्चर के सदस्य पब्लिक होते हैं। आइए इन दो कोड्स को देखें ताकि अंतर देख सकें। उदाहरण कोड #include <iostream> using namespace std; clas

  1. - C++ में log() फ़ंक्शन

    C/C++ लाइब्रेरी फ़ंक्शन double log(double x) x का नेचुरल लॉगरिदम (बेस e लॉगरिदम) लौटाता है। log() फ़ंक्शन के लिए घोषणा निम्नलिखित है। double log(double x) पैरामीटर एक फ्लोटिंग पॉइंट मान है। और यह फ़ंक्शन x का नेचुरल लॉगरिदम लौटाता है। उदाहरण #include <iostream> #include <cmath> using

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

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