Function parameters and return types c++ In Hindi
C++ प्रोग्रामिंग लैंग्वेज में फ़ंक्शन वेरिएबल पैरामीटर वैल्यू और रिटर्न डाटा टाइप किसी भी यूजर डिफाइन फ़ंक्शन डेफ़िनिशन का एक इम्पोर्टेन्ट कांसेप्ट या एलिमेंट होता हैं, और फंक्शन C++ यूजर को यह मैनेज करने में हेल्प करते हैं कि यूजर डिफाइन फ़ंक्शन में डिक्लेअर फंक्शन पैरामीटर डेटा टाइप वैल्यू को एक्चुअल और फॉर्मल आर्गुमेंट में कैसे पास या ट्रांसफर किया जाता है, और जरूरत पड़ने पर कैसे किसी फंक्शन से एग्जिट किया जाता है। किसी भी कस्टम फ़ंक्शन में डिफाइन पैरामीटर को कैसे और कब यूज़ करें और रिटर्न डाटा टाइप को प्रॉपर आर्डर में कैसे डिफाइन करें, C++ प्रोग्रामिंग में फंक्शन आपको मॉडुलुअर प्रोग्राम सोर्स कोड या फंक्शनल प्रोग्राम क्रिएट करने में हेल्पफुल होते है।

So, let’s take a closer look at the function parameter and return data type concepts in the C++ programming.
Function Parameter Concept in C++.
किसी फ़ंक्शन प्रोग्राम में पैरामीटर वे यूजर डिफाइन वैरिएबल होते हैं, जो एक कस्टम यूजर क्रिएटेड फ़ंक्शन डेफ़िनिशन में ब्रैकेट के अंदर क्रिएट किये जाते हैं। ये यूजर डिफाइन कस्टम वेरिएबल पैरामीटर उन एक्चुअल डाटा टाइप वैल्यू के लिए प्लेसहोल्डर या स्टोरेज लोकेशन की तरह यूज़ होते हैं. जो किसी मौजूदा फ़ंक्शन को प्रोग्राम में कॉल करने पर वैल्यू या इनफार्मेशन पास करते हैं।
Types of C++ Function Parameters.
एक बेसिक C++ फंक्शन प्रोग्राम में कई तरह के फ़ंक्शन पैरामीटर वेरिएबल डिफाइन होते हैं.
- Pass-by-value – पास बाय वैल्यू फ़ंक्शन में यूजर डिफाइन फंक्शन पैरामीटर को आर्गुमेंट वैल्यू की एक कॉपी प्रोवाइड या पास की जाती है।
- Pass-by-reference – पास बाय रेफ़्रेन्स मेथड यूजर डिफाइन फ़ंक्शन को एक ओरिजिनल डिक्लेअर फंक्शन आर्गुमेंट का एक एक्चुअल रेफरेंस प्रोवाइड करता है, जिससे C++ यूजर किसी फंक्शन प्रोग्राम में डायरेक्ट किसी आर्गुमेंट को मॉडिफाई या रिप्लेस कर सकता है।
- Pass-by-constant reference – यह फंक्शन मेथड पास-बाय-रेफरेंस के जैसा ही परफॉर्म करता है. लेकिन इस तरह के फ़ंक्शन में पास की गई वैल्यू को रिप्लेस नहीं किया जा सकता है।
Pass-by-value concept in C++.
पास-बाय-वैल्यू मेथड में डिफाइन डिक्लेअर पैरामीटर फ़ंक्शन को पास किए गए आर्गुमेंट वैल्यू की एक कॉपी प्रोवाइड की जाती है। पास-बाय-वैल्यू में डिफाइन फ़ंक्शन के अंदर पैरामीटर में किसी भी प्रकार के मॉडिफिकेशन करने से मौजूदा फ़ंक्शन के बाहर ओरिजिनल आर्गुमेंट पर कोई मेजर इम्पैक्ट नहीं होता है।
Pass-by-value syntax in C++.
return_type function_name(parameter1, parameter2, …) {
// Here you can define the function body as per your needs
}
Example of a pass-by-value function.
#include <iostream>
using namespace std;
void grow(int p) {
p++; // here it Modifies the local copy of p parameter
cout << “here it grow Inside the function – ” << p << endl;
}
int main() {
int q = 1;
grow(q); // here it Passes a copy of q parameter value
cout << “here it stable Inside the main function – ” << q << endl; // here q parameter value remains unchanged with increment operator
return 0;
}
Explanation of Pass-by-value function method.
- यहाँ पास बाय वैल्यू एक्साम्प्ल में, फ़ंक्शन grow, q पैरामीटर की वैल्यू को वैल्यू के अनुसार एक्सेप्ट करता है। चाहे यहाँ p पैरामीटर को फ़ंक्शन के अंदर ग्रो इन्क्रीमेंट ऑपरेटर से इनक्रीस किया गया हो, यहाँ main() फंक्शन में ओरिजिनल वेरिएबल q वेरिएबल में कोई मॉडिफिकेशन नहीं होता है।
Pass-by-reference concept in C++.
पास-बाय-रेफरेंस फंक्शन मेथड प्रोगाम में फ़ंक्शन को पास किए गए आर्गुमेंट वैल्यू के लिए एक रेफरेंस वैल्यू एड्रेस लोकेशन (यानी, एक एलियास फॉर्मल और एक्चुअल) वैल्यू प्रोवाइड की जाती है। जिससे कि फंक्शन पैरामीटर में किए गए कोई भी मॉडिफिकेशन ओरिजिनल फंक्शन आर्गुमेंट वैल्यू पर इम्पैक्ट करते है।
Syntax of pass-by-reference in C++.
return_type function_name(type ¶meter1, type ¶meter2, …) {
// Here you can define the function body as per your needs
}
Example of pass-by-reference.
#include <iostream>
using namespace std;
void grow(int &p) {
p++; // here it Directly modifies the original parameter variable passed
cout << “here it grow Inside the function – ” << p << endl;
}
int main() {
int q = 1;
grow(q); // here it Passes a reference to q parameter
cout << “here it stable Inside the main function – ” << q << endl; // here q parameter is modified
return 0;
}
Explanation of pass-by-reference function method.
- यहाँ पास बाय रेफरेंस एक्साम्प्ल में, q पैरामीटर वेरिएबल को इन्क्रीमेंट फंक्शन के रेफरेंस से पास किया जाता है। जिसमे फंक्शन के अंदर p पैरामीटर में किए गए कोई भी मॉडिफिकेशन डायरेक्ट ओरिजिनल वेरिएबल q पर इम्पैक्ट करते हैं।
Pass-by-constant reference concept in C++.
पास-बाय-कॉन्स्टेंट रेफरेंस मेथड में, यूजर डिफाइन फंक्शन को आर्गुमेंट वैल्यू का एक रेफरेंस प्रोवाइड किया जाता है. जैसा की यह ओरिजिनल फंक्शन आर्गुमेंट वैल्यू को मॉडिफाई नहीं कर सकता है। पास-बाय-कॉन्स्टेंट रेफरेंस मेथड को तब यूज़ किया जाता है, जब C++ यूजर बड़े फंक्शन ऑब्जेक्ट की मल्टीप्ल कॉपी क्रिएशन प्रोसेस को अवॉयड करना चाहते हैं. लेकिन फिर भी C++ यूजर यह फिक्स करना चाहते हैं कि मौजूदा फंक्शन पैरामीटर आर्गुमेंट वैल्यू में कोई मॉडिफिकेशन न कर सके।
Pass-by-constant reference syntax.
return_type function_name(const type ¶meter1, const type ¶meter2, …) {
// Here you can define the function body as per your needs
}
Example of pass-by-constant reference.
#include <iostream>
using namespace std;
void preview(const int &p) {
cout << “here is the Value of p parameter – ” << p << endl;
// p++; // it display Error – cannot modify a const reference variable value
}
int main() {
int q = 7;
preview(q); // here it Passes q parameter by constant reference
return 0;
}
Explanation of pass-by-constant reference function method.
- यहाँ पास बाय कांस्टेंट रेफरेंस एक्साम्प्ल में, q पैरामीटर को कॉन्स्टेंट रेफरेंस से पास किया जाता है। जिसमे फ़ंक्शन बिना कॉपी किए q पैरामीटर को प्रॉपर एक्सेस कर सकता है, जैसा की यह q पैरामीटर की ओरिजिनल वैल्यू को मॉडिफाई नहीं कर सकता है. क्योंकि यहाँ फंक्शन रेफरेंस const डाटा टाइप के रूप में डिफाइन है।
Function return type concept in C++.
किसी यूजर डिफाइन फ़ंक्शन का रिटर्न डाटा टाइप उस पैरामीटर वैल्यू के रिटर्न डाटा टाइप को इंडीकेट करता है, जो मौजूदा प्रोग्राम में फ़ंक्शन कॉलिंग के समय किसी फ़ंक्शन वैल्यू को रिटर्न करेगा। यहाँ प्रोग्राम में रिटर्न डाटा टाइप कोई भी वैलिड C++ डेटा टाइप हो सकता है. जैसे की, int, float, double, char, आदि या void यदि आपका फ़ंक्शन कुछ भी वैल्यू रिटर्न नहीं करता है, के रूप में डिक्लेअर हो सकता है।
return data type void (no return value) concept in C++.
याद रहे जिस फ़ंक्शन का रिटर्न डाटा टाइप void नेचर डिफाइन होता है, वह फंक्शन मौजूदा प्रोगाम में कोई वैल्यू रिटर्न नहीं कर सकता है। वोयड डिक्लेअर फ़ंक्शन का यूज़ तब किया जाता है, जब C++ यूजर चाहते हैं कि उनके द्वारा क्रिएटेड फ़ंक्शन सिर्फ़ किसी एक्शन को परफॉर्म करे. जैसे, कुछ पैरामीटर वैल्यू को प्रिंट करना, फंक्शन पैरामीटर रेफरेंस से वेरिएबल को मॉडिफाई करना। लेकिन इसमें फंक्शन कॉलर को कोई डेटा रिटर्न करने की आवश्यकता नहीं है।
Syntax of return data type void (no return value).
void function_name() {
// Here you can define the function body as per your needs
}
Example of return data type void (no return).
#include <iostream>
using namespace std;
void message() {
cout << “Welcome to, Vcanhelpsu” << endl;
}
int main() {
message(); // here it Calls the function with a void return type method
return 0;
}
Explanation of return data type with void function method.
- यहाँ रिटर्न डाटा टाइप वोयड एक्साम्प्ल में, एक यूजर डिफाइन फ़ंक्शन message को void रिटर्न टाइप से डिक्लेअर किया गया है, इसका मतलब है कि यह मौजूदा प्रोग्राम में कोई वैल्यू रिटर्न नहीं करता है। यह सिर्फ़ एक यूजर डिफाइन मैसेज को कंसोल स्क्रीन में प्रिंट करता है।
