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

सी # 7.0 में रेफरी स्थानीय और रेफ रिटर्न क्या हैं?

एक संदर्भ वापसी मूल्य एक विधि को एक मूल्य के बजाय एक चर के संदर्भ को वापस करने की अनुमति देता है।

कॉलर तब लौटाए गए चर का इलाज करना चुन सकता है जैसे कि यह मूल्य या संदर्भ द्वारा लौटाया गया हो।

कॉलर एक नया वेरिएबल बना सकता है जो स्वयं लौटाए गए मान का संदर्भ है, जिसे रेफ लोकल कहा जाता है।

नीचे दिए गए उदाहरण में, भले ही हम रंग को संशोधित करते हैं, लेकिन इसका मूल सरणी रंगों पर कोई प्रभाव नहीं पड़ता है

उदाहरण

class Program{
   public static void Main(){
      var colors = new[] { "blue", "green", "yellow", "orange", "pink" };
      string color = colors[3];
      color = "Magenta";
      System.Console.WriteLine(String.Join(" ", colors));
      Console.ReadLine();
   }
}

आउटपुट

blue green yellow orange pink

इसे प्राप्त करने के लिए हम स्थानीय रेफरी का उपयोग कर सकते हैं

उदाहरण

public static void Main(){
   var colors = new[] { "blue", "green", "yellow", "orange", "pink" };
   ref string color = ref colors[3];
   color = "Magenta";
   System.Console.WriteLine(String.Join(" ", colors));
   Console.ReadLine();
}

आउटपुट

blue green yellow Magenta pink

रिटर्न रेफरी -

नीचे दिए गए उदाहरण में, भले ही हम रंग को संशोधित करते हैं, लेकिन इसका मूल सरणी रंगों पर कोई प्रभाव नहीं पड़ता है

उदाहरण

class Program{
   public static void Main(){
      var colors = new[] { "blue", "green", "yellow", "orange", "pink" };
      string color = GetColor(colors, 3);
      color = "Magenta";
      System.Console.WriteLine(String.Join(" ", colors));
      Console.ReadLine();
   }
   public static string GetColor(string[] col, int index){
      return col[index];
   }
}

आउटपुट

नीला हरा पीला नारंगी गुलाबी

उदाहरण

class Program{
   public static void Main(){
      var colors = new[] { "blue", "green", "yellow", "orange", "pink" };
      ref string color = ref GetColor(colors, 3);
      color = "Magenta";
      System.Console.WriteLine(String.Join(" ", colors));
      Console.ReadLine();
   }
   public static ref string GetColor(string[] col, int index){
      return ref col[index];
   }
}

आउटपुट

blue green yellow Magenta pink

  1. सी # में नामस्थान क्या हैं?

    एक नाम स्थान नामों के एक सेट को दूसरे से अलग रखने का तरीका प्रदान करने के लिए है। नेमस्पेस की परिभाषा कीवर्ड नेमस्पेस से शुरू होती है और उसके बाद नेमस्पेस नाम इस प्रकार है - namespace namespace_name {    // code declarations } नेमस्पेस परिभाषित करें - namespace namespace_name {   &nb

  1. सी # में रेफरी और आउट पैरामीटर के बीच अंतर क्या हैं?

    रेफरी पैरामीटर एक संदर्भ पैरामीटर एक चर के स्मृति स्थान का संदर्भ है। जब आप संदर्भ द्वारा पैरामीटर पास करते हैं, तो मान पैरामीटर के विपरीत, इन पैरामीटर के लिए एक नया संग्रहण स्थान नहीं बनाया जाता है। आप रेफरी कीवर्ड का उपयोग करके संदर्भ पैरामीटर घोषित कर सकते हैं। निम्नलिखित एक उदाहरण है - उदाहरण

  1. C# में लेफ्ट शिफ्ट और राइट शिफ्ट ऑपरेटर (>> और <<) क्या हैं?

    बिटवाइज लेफ्ट शिफ्ट ऑपरेटर बाएं ऑपरेंड मान को दाएं ऑपरेंड द्वारा निर्दिष्ट बिट्स की संख्या से बाईं ओर ले जाया जाता है। बिटवाइज राइट शिफ्ट ऑपरेटर बाएं ऑपरेंड मान को दाएं ऑपरेंड द्वारा निर्दिष्ट बिट्स की संख्या से दाएं स्थानांतरित किया जाता है। निम्नलिखित एक उदाहरण है जो दिखाता है कि बिटवाइज़ बाएँ