Function Overloading in C++ in Hindi

हेलो स्टूडेंट्स, इस पोस्ट में हम आज Function Overloading in C++ in Hindi के बारे में पढ़ेंगे | इंटरनेट में C++ भाषा के नोट्स हिंदी में बहुत कम उपलब्ध है, लेकिन हम आपके लिए यह हिंदी में डिटेल्स नोट्स लाये है, जिससे आपको यह टॉपिक बहुत अच्छे से समझ आ जायेगा |

Hello दोस्तों! आज हम इस पोस्ट में Function Overloading in C++ in Hindi (C++ में फंक्शन ओवरलोडिंग क्या है?) के बारें में पढेंगे और इसके examples को भी देखेंगे. इसे मैंने बहुत ही आसान भाषा में लिखा है. आप इसे पूरा पढ़िए, आपको यह आसानी से समझ में आ जायेगा. तो चलिए शुरू करते हैं:-

अनुक्रम (contents)

Function Overloading in C++ in Hindi

C++ में, Function overloading एक महत्वपूर्ण feature है जिसमें दो या दो से अधिक functions का same (समान) name होता है परन्तु उनके parameters अलग-अलग होते हैं.

दूसरे शब्दों में कहें तो, “C++ में, बहुत सारें functions का name समान हो सकता है परन्तु उनके parameters अलग-अलग होते हैं. इसे ही फंक्शन ओवरलोडिंग कहते हैं.”

फंक्शन ओवरलोडिंग को compile-time polymorphism भी कहते है.

Function overloading का मुख्य लाभ यह है कि इससे program की readability बढ़ जाती है क्योंकि हमें एक ही कार्य के लिए अलग-अलग names की आवश्यकता नहीं होती है.

उदाहरण के लिए

// same name different arguments
int demo() { }
int demo(int a) { }
float demo(double a) { }
int demo(int a, double b) { }

ऊपर दिए उदाहरण में सभी 4 functions, overloaded है. इनके name एक समान है परन्तु इनके arguments (parameters) अलग हैं.

C++ में Function Overloading कैसे करते हैं?

Functions को दो तरीकों से overload किया जाता है.

  1. Arguments की संख्या को change करके.
  2. Arguments के type को change करके.

Arguments की संख्या को change करके –

इस प्रकार की फंक्शन ओवरलोडिंग में, function के arguments की संख्या different होती है.

इसका example

#include <iostream>
using namespace std;
int add (int a, int b)
{
cout << a + b << endl;
 return 0;
}
int add (int a, int b, int c)
{
cout << a + b + c << endl;
return 0;
}
int main ()
{
add (10, 30); 
add (50, 20, 30);
}

इसका आउटपुट
40
100

ऊपर दिए गये example में, हमने add() function को arguments की संख्या को change करके overload किया है. पहले हमने add() को दो parameters के साथ define किया है और फिर हमने add() को तीन parameters के साथ define किया है.

Also read : Operator Overloading in C++ in Hindi

Argument के type को change करके –

इस method में, फंक्शन के parameters के data types अलग होते हैं.

इसका example –

#include <iostream>
using namespace std;
int add(int x, int y) // first definition
{
cout<< x+y << endl;
return 0;
}
 float add(float a, float b)
{
cout << a+b << endl;
return 0;
}

double add(double x, double y)
{
cout << x+y << endl;
    return 0;
}
int main()
{
add(30, 10);  
add(21.45f, 38.4f);
add(41.24, 21.234);  
}
इसका आउटपुट - 
40
59.85
62.474

ऊपर दिए गये उदाहरण में हमने add() function को तीन बार define किया गया है. पहले हमने int, दूसरे में float और तीसरे में double parameters का प्रयोग किया है.

Advantage of Function overloading in C++ in Hindi

इसके लाभ निम्नलिखित हैं:-

  1. हम फंक्शन ओवरलोडिंग का प्रयोग memory को save करने, consistency और program की readability को बेहतर बनाने के लिए करते हैं.
  2. इसका प्रयोग करके हम एक ही name के बहुत सारें functions को create कर सकते हैं.
  3. यह हमारे program के execution की speed को बढ़ा देता है.
  4. इससे code की reusability बढती है अर्थात् हम एक code को बहुत सारीं जगह प्रयोग कर सकते हैं.
  5. हम code को आसानी से maintain कर सकते हैं.

Function overloading and Ambiguity in C++

जब compiler यह निर्णय नहीं ले पाता कि उसे overloaded functions में से किस function को सबसे पहले invoke करना चाहिए. तो इस स्थिति को function overloading ambiguity कहते है. कम्पाइलर program को तब तक run नहीं करता है जब तक यह ambiguity error दिखाता है.

Function overloading ambiguity के कारण

  • Type Conversion.
  • Function with default arguments.
  • Function with a pass by reference

References:- https://www.edureka.co/blog/function-overloading-in-cpp/

function overloading in c++ in hindi

हम आशा करते है कि यह Function Overloading in C++ in Hindi के हिंदी में नोट्स आपकी स्टडी में उपयोगी साबित हुए होंगे | अगर आप लोगो को इससे रिलेटेड कोई भी किसी भी प्रकार का डॉउट हो तो कमेंट बॉक्स में कमेंट करके पूंछ सकते है | आप इन्हे अपने Classmates & Friends के साथ शेयर करे |

Leave a Comment

Your email address will not be published.