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

C++ में फंक्शन ओवरलोडिंग और रिटर्न टाइप


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

फंक्शन ओवरलोडिंग मूल रूप से कंपाइल टाइम पॉलीमॉर्फिज्म है। यह फंक्शन सिग्नेचर की जांच करता है। यदि सिग्नेचर समान नहीं हैं, तो उन्हें ओवरलोड किया जा सकता है। फंक्शन का रिटर्न टाइप फंक्शन ओवरलोडिंग पर कोई प्रभाव नहीं डालता। अलग रिटर्न टाइप के साथ समान फंक्शन सिग्नेचर ओवरलोड नहीं होगा।

निम्नलिखित उदाहरण है जहां समान फंक्शन print() का उपयोग विभिन्न डेटा टाइप प्रिंट करने के लिए किया जा रहा है:

उदाहरण कोड

#include <iostream> using namespace std; class printData {    public:       void print(int i) {          cout << "Printing int: " << i << endl;       }       void print(double f) {          cout << "Printing float: " << f << endl;       }       void print(char* c) {          cout << "Printing character: " << c << endl;       } }; int main(void) {    printData pd;    pd.print(5); // पूर्णांक प्रिंट करने के लिए print कॉल करें    pd.print(500.263); // फ्लोट प्रिंट करने के लिए print कॉल करें    pd.print("Hello C++"); // कैरेक्टर प्रिंट करने के लिए print कॉल करें    return 0; }

आउटपुट

Printing int: 5 Printing float: 500.263 Printing character: Hello C++
  1. - C++ में कैच ब्लॉक और टाइप कन्वर्जन

    परिचय इस सेक्शन में, हम देखेंगे कि C++ में एक्सेप्शन हैंडलिंग के लिए कैच ब्लॉक और टाइप कन्वर्जन का उपयोग कैसे करें। उदाहरण 1: कैरेक्टर थ्रो करना लेकिन int कैच करना #include <iostream> using namespace std; int main() { try { throw a; // कैरेक्टर थ्रो कर रहे हैं } catch (i

  1. - C++ में डिफ़ॉल्ट आर्गुमेंट्स और वर्चुअल फ़ंक्शन

    आइए अवधारणा को आसानी से समझने के लिए C++ में एक नमूना प्रोग्राम पर विचार करें। उदाहरण कोड #include<iostream> using namespace std; class B {    public:       virtual void s(int a = 0) {          cout<<" In Base \n";   &nbs

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

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