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

C# मेथड में पैरामीटर्स को संदर्भ द्वारा कैसे पास करें


एक संदर्भ पैरामीटर एक चर के मेमोरी स्थान का संदर्भ होता है। जब आप पैरामीटर्स को संदर्भ द्वारा पास करते हैं, तो मान पैरामीटर्स के विपरीत, इन पैरामीटर्स के लिए एक नया स्टोरेज स्थान नहीं बनाया जाता है।

संदर्भ पैरामीटर्स उसी मेमोरी स्थान को दर्शाते हैं जो मेथड को आपूर्ति किए गए वास्तविक पैरामीटर्स का होता है।

निम्नलिखित उदाहरण संदर्भ द्वारा पैरामीटर्स पास करने का तरीका दिखाता है। ref कीवर्ड का उपयोग करके संदर्भ पैरामीटर्स घोषित करें।

उदाहरण

using System; 
namespace CalculatorApplication { 
    class NumberManipulator { 
        public void swap(ref int x, ref int y) { 
            int temp; 
            temp = x; /* x का मान सहेजें */ 
            x = y; /* y को x में डालें */ 
            y = temp; /* temp को y में डालें */ 
        } 
        static void Main(string[] args) { 
            NumberManipulator n = new NumberManipulator(); 
            /* स्थानीय चर परिभाषा */ 
            int a = 100; 
            int b = 200; 
            Console.WriteLine("स्वैप से पहले, a का मान: {0}", a); 
            Console.WriteLine("स्वैप से पहले, b का मान: {0}", b); 
            /* मानों को स्वैप करने के लिए फ़ंक्शन कॉल करें */ 
            n.swap(ref a, ref b); 
            Console.WriteLine("स्वैप के बाद, a का मान: {0}", a); 
            Console.WriteLine("स्वैप के बाद, b का मान: {0}", b); 
            Console.ReadLine(); 
        } 
    } 
}

आउटपुट

यह निम्नलिखित आउटपुट देगा -

स्वैप से पहले, a का मान: 100 
स्वैप से पहले, b का मान: 200 
स्वैप के बाद, a का मान: 200 
स्वैप के बाद, b का मान: 100

  1. - पायथन फ़ंक्शन में आर्गुमेंट्स को रेफरेंस द्वारा कैसे पास करें?

    दिए गए कोड के लिए हमें निम्न आउटपुट मिलता है: b = [10, 20] a = [10, 20] व्याख्या: यह इंगित करता है कि वेरिएबल a को रेफरेंस द्वारा पास किया गया था क्योंकि फ़ंक्शन मुख्य स्क्रिप्ट में इसके मान को बदल देता है।

  1. - पायथन फंक्शन में आर्गुमेंट्स को रेफरेंस द्वारा कैसे पास करें?

    पायथन में, फंक्शन आर्गुमेंट्स हमेशा रेफरेंस द्वारा पास किए जाते हैं। इसे id() की जांच करके सत्यापित किया जा सकता है। उदाहरण def foo(x): print(id of received argument, id(x)) x.append(20) return x a = [10] print(id of argument before calling function, id(a)) b = foo(a) print(id of return

  1. - पायथन फंक्शन में आर्गुमेंट्स को वैल्यू द्वारा कैसे पास करें?

    दिए गए कोड के लिए आउटपुट निम्नानुसार है: b = 30 a = [10] इस मामले में, a वैल्यू द्वारा पास किया हुआ लगता है, क्योंकि फंक्शन कॉल के बाद भी मान अपरिवर्तित रहता है। इसलिए यह स्पष्ट है कि आर्गुमेंट्स पायथन फंक्शन में वैल्यू द्वारा पास किए गए हैं।