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

C++ में पॉलीमॉर्फिज्म उदाहरण


पॉलीमॉर्फिज्म ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग की एक प्रमुख विशेषता है जिसका अर्थ है कई रूप होना। यह C++ में कंपाइल-टाइम पॉलीमॉर्फिज्म और रनटाइम पॉलीमॉर्फिज्म में विभाजित है।

कंपाइल-टाइम पॉलीमॉर्फिज्म का एक उदाहरण फंक्शन ओवरलोडिंग या ऑपरेटर ओवरलोडिंग है। रनटाइम पॉलीमॉर्फिज्म का एक उदाहरण फंक्शन ओवरराइडिंग है।

C++ में फंक्शन ओवरलोडिंग का उपयोग करके पॉलीमॉर्फिज्म का एक उदाहरण निम्नलिखित है।

उदाहरण

#include <iostream> using namespace std; class Example {    public :    void func(int a) {       cout << "\na का मान: " << a;    }    void func(int a, int b) {       cout << "\na का मान: " << a;       cout << "\nb का मान: " << b;    }    void func(char c) {       cout << "\nc का मान: " << c;    } }; int main() {    Example obj;    cout<< "\nएक int मान";    obj.func(5);    cout<< "\nएक char मान";    obj.func('A');    cout<< "\nदो int मान";    obj.func(7, 2);    return 0; }

आउटपुट

उपरोक्त प्रोग्राम का आउटपुट निम्नलिखित है।

एक int मान a का मान: 5 एक char मान c का मान: A दो int मान a का मान: 7 b का मान: 2

अब, आइए उपरोक्त प्रोग्राम को समझते हैं।

क्लास Example में मेंबर फंक्शन func() ओवरलोडेड है। अलग-अलग पैरामीटर्स वाले 3 func() फंक्शन्स हैं जिन्हें आवश्यकतानुसार चुना जा सकता है। इसके लिए कोड स्निपेट निम्नलिखित है।

class Example {    public :    void func(int a) {       cout << "\na का मान: " << a;    }    void func(int a, int b) {       cout << "\na का मान: " << a;       cout << "\nb का मान: " << b;    }    void func(char c) {       cout << "\nc का मान: " << c;    } };

main() फंक्शन में, Example क्लास का एक ऑब्जेक्ट obj बनाया जाता है। फंक्शन ओवरलोडिंग को प्रदर्शित करने के लिए func() को अलग-अलग आर्गुमेंट्स के साथ कॉल किया जाता है। इसके लिए कोड स्निपेट निम्नलिखित है।

int main() {    Example obj;    cout<< "\nएक int मान";    obj.func(5);    cout<< "\nएक char मान";    obj.func('A');    cout<< "\nदो int मान";    obj.func(7, 2);    return 0; }

  1. - C++ में अधिकतम इरेज़र वैल्यू

    सकारात्मक पूर्णांकों की एक सरणी दी गई है, कार्य एक सबएरे को मिटाना है जिसमें सभी अद्वितीय तत्व हों। सबएरे को मिटाकर आपको जो मिलता है वह उसके तत्वों का योग के बराबर होता है। वर्तमान सबएरे के अधिकतम योग को उसके पहले या बाद के पदों को मिटाकर लौटाएं, हम ठीक एक सबएरे को मिटाकर अधिकतम योग प्राप्त कर सकते

  1. C++ में उदाहरण के साथ एक्सप्रेशन ट्री C++ में उदाहरण के साथ एक्सप्रेशन ट्री

    एक एक्सप्रेशन ट्री एक विशेष प्रकार का बाइनरी ट्री है जिसमें ट्री का प्रत्येक नोड या तो एक ऑपरेटर या ऑपरेंड से बना होता है। लीफ नोड्स ट्री के एक ऑपरेंड को दर्शाते हैं। नॉन-लीफ नोड्स ट्री के एक ऑपरेटर को दर्शाते हैं। उदाहरण: इनफिक्स एक्सप्रेशन प्राप्त करने के लिए जिसे आसानी से हल किया जा सकता है, हम

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

    log1p() फ़ंक्शन का उपयोग किसी भी संख्या a के लिए (a+1) के नेचुरल लॉगरिदम (आधार e लॉगरिदम) की गणना के लिए किया जाता है। यह (a+1) के नेचुरल लॉगरिदम का मान लौटाता है। जब हम -1 से कम मान पास करते हैं तो यह NaN (नॉट ए नंबर) लौटाता है। गणितीय अभिव्यक्ति log1p(a) = base-e log(a+1) C++ में सिंटैक्स float