C# में तरीके आमतौर पर प्रोग्राम में कोड या स्टेटमेंट के ब्लॉक होते हैं जो उपयोगकर्ता को उसी कोड का पुन:उपयोग करने की क्षमता देता है जो अंततः मेमोरी के अत्यधिक उपयोग को बचाता है, एक समय बचाने वाला के रूप में कार्य करता है और इससे भी महत्वपूर्ण बात यह है कि यह कोड की बेहतर पठनीयता प्रदान करता है।
कुछ स्थितियां हो सकती हैं कि उपयोगकर्ता किसी विधि को निष्पादित करना चाहता है लेकिन कभी-कभी उस विधि को अपने कार्यों को निष्पादित करने और पूरा करने के लिए कुछ मूल्यवान इनपुट की आवश्यकता होती है। इन इनपुट मानों को पैरामीटर . के रूप में जाना जाता है ।
पैरामीटर्स को निम्न तरीकों से एक विधि में पास किया जा सकता है -
-
मान पैरामीटर
-
संदर्भ पैरामीटर
-
आउटपुट पैरामीटर्स
मान पैरामीटर
मान पैरामीटर फ़ंक्शन के औपचारिक पैरामीटर में तर्क के वास्तविक मान की प्रतिलिपि बनाते हैं। जब एक साधारण चर को किसी भी विधि के पैरामीटर के रूप में पारित किया जाता है, तो इसे एक मान के रूप में पारित किया जाता है। इसका मतलब यह है कि पैरामीटर के रूप में पारित चर द्वारा निहित मान को विधि के चर में कॉपी किया जाता है, और यदि विधि के अंदर इन मानों को बदला या संशोधित किया जाता है, तो परिवर्तन वास्तविक पारित चर में परिलक्षित नहीं होता है। अधिकांश आदिम डेटा प्रकार जैसे पूर्णांक, डबल, बूलियन आदि मान द्वारा पारित किए जाते हैं।
उदाहरण
using System; namespace MyApplication{ public class Program{ public static void Main(){ int x = 5, y = 5; Console.WriteLine($"Value before calling the method. x = {x}, y = {y}"); ValueParamter(x, y); Console.WriteLine($"Value after calling the method. x = {x}, y = {y}"); } public static void ValueParamter(int x, int y){ x = 10; y = 10; int z = x + y; Console.WriteLine($"Sum of x and y = {z}"); } } }
आउटपुट
उपरोक्त कोड का आउटपुट इस प्रकार है &mius;
Value before calling the method. x = 5, y = 5 Sum of x and y = 20 Value after calling the method. x = 5, y = 5
संदर्भ पैरामीटर
संदर्भ पैरामीटर औपचारिक पैरामीटर में तर्क के स्मृति स्थान के संदर्भ की प्रतिलिपि बनाता है। आम तौर पर, सभी वस्तुओं को विधि के पैरामीटर के रूप में संदर्भ द्वारा पारित किया जाता है। विधि उनके मूल्यों पर काम करने के बजाय मापदंडों में पारित चर के संदर्भों पर काम करती है। इसका परिणाम कॉलिंग फ़ंक्शन में चर के संशोधन में होता है जब उन्हें कॉल किए गए फ़ंक्शन में संशोधित किया जाता है। इसका अर्थ है कि पैरामीटर में किए गए परिवर्तन तर्क को प्रभावित करते हैं।
उदाहरण
using System; namespace MyApplication{ public class Program{ public static void Main(){ int x = 5, y = 5; Console.WriteLine($"Value before calling the method. x = {x}, y = {y}"); RefParamter(ref x, ref y); Console.WriteLine($"Value after calling the method. x = {x}, y = {y}"); } public static void RefParamter(ref int x, ref int y){ x = 10; y = 10; int z = x + y; Console.WriteLine($"Sum of x and y = {z}"); } } }
आउटपुट
उपरोक्त कोड का आउटपुट इस प्रकार है -
Value before calling the method. x = 5, y = 5 Sum of x and y = 20 Value after calling the method. x = 10, y = 10
आउटपुट पैरामीटर
आउटपुट पैरामीटर एक से अधिक मान वापस करने में मदद करते हैं। किसी फ़ंक्शन से केवल एक मान वापस करने के लिए रिटर्न स्टेटमेंट का उपयोग किया जा सकता है। हालांकि, आउटपुट पैरामीटर का उपयोग करके, आप फ़ंक्शन से दो मान वापस कर सकते हैं। आउटपुट पैरामीटर के लिए आपूर्ति किए गए चर को एक मान निर्दिष्ट करने की आवश्यकता नहीं है। आउटपुट पैरामीटर विशेष रूप से उपयोगी होते हैं जब आपको पैरामीटर के लिए प्रारंभिक मान निर्दिष्ट किए बिना पैरामीटर के माध्यम से किसी विधि से मान वापस करने की आवश्यकता होती है। आउटपुट पैरामीटर संदर्भ पैरामीटर के समान हैं, सिवाय इसके कि वे डेटा को इसके बजाय विधि से बाहर स्थानांतरित करते हैं।
उदाहरण
using System; namespace MyApplication{ public class Program{ public static void Main(){ int result; OutParamter(out result); Console.WriteLine($"Result: {result}"); } public static void OutParamter(out int result){ int x = 10, y = 10; result = x + y; } } }
आउटपुट
The output of the above code is as follows: Result: 20