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

C# में out और ref कीवर्ड में अंतर


out कीवर्ड

out कीवर्ड का उपयोग मेथड में तर्कों को रेफरेंस प्रकार के रूप में पास करने के लिए किया जाता है और इसका प्राथमिक उपयोग तब होता है जब किसी मेथड को एकाधिक मान वापस करने होते हैं। ref कीवर्ड का उपयोग भी मेथड में तर्कों को रेफरेंस प्रकार के रूप में पास करने के लिए किया जाता है और इसका उपयोग तब किया जाता है जब मौजूदा वेरिएबल को किसी मेथड में संशोधित करना हो। C# में ref और out कीवर्ड्स के वैध उपयोग निम्नलिखित हैं।

उदाहरण

using System.IO; 
using System; 
public class Program { 
    public static void update(out int a){ 
        a = 10; 
    } 
    public static void change(ref int d){ 
        d = 11; 
    } 
    public static void Main() { 
        int b; 
        int c = 9; 
        Program p1 = new Program(); 
        update(out b); 
        change(ref c); 
        Console.WriteLine("Updated value is: {0}", b); 
        Console.WriteLine("Changed value is: {0}", c); 
    } 
}

आउटपुट

Updated value is: 10 
Changed value is: 11

ref और out कीवर्ड्स के बीच कुछ महत्वपूर्ण अंतर निम्नलिखित हैं।

क्र.सं.मुख्य बिंदुref कीवर्डout कीवर्ड
1उद्देश्यref कीवर्ड का उपयोग तब किया जाता है जब कॉल्ड मेथड को पास किए गए पैरामीटर को अपडेट करना होता है।out कीवर्ड का उपयोग तब किया जाता है जब कॉल्ड मेथड को पास किए गए एकाधिक पैरामीटर्स को अपडेट करना होता है।
2दिशाref कीवर्ड का उपयोग डेटा को द्वि-दिशात्मक तरीके से पास करने के लिए किया जाता है।out कीवर्ड का उपयोग डेटा को एक-दिशात्मक तरीके से प्राप्त करने के लिए किया जाता है।
3आरंभीकरणकिसी वेरिएबल को ref के रूप में पास करने से पहले, इसे आरंभ करना आवश्यक है अन्यथा कंपाइलर त्रुटि फेंक देगा।यदि out कीवर्ड का उपयोग किया जाता है तो वेरिएबल को आरंभ करने की आवश्यकता नहीं है।
4आरंभीकरणकॉल्ड मेथड में, ref के रूप में पास किए गए पैरामीटर को आरंभ करना आवश्यक नहीं है।कॉल्ड मेथड में, out के रूप में पास किए गए पैरामीटर को आरंभ करना आवश्यक है।

  1. - जावा में Packages और Interfaces में अंतर

    इस पोस्ट में, हम जावा में पैकेजेस और इंटरफेसेस के बीच अंतर को समझेंगे।Packagesयह एक साथ क्लासेस और/या इंटरफेसेस का एक समूह है।इसे Package कीवर्ड का उपयोग करके बनाया जा सकता है।इसे इम्पोर्ट किया जा सकता है।इसे import कीवर्ड का उपयोग करके किया जा सकता है।उदाहरणpackage package_name; public class class_

  1. - Go और Java में अंतर

    GoGo एक प्रक्रियात्मक प्रोग्रामिंग भाषा है। प्रोग्राम पैकेज का उपयोग करके असेंबल किए जाते हैं। यह डायनामिक भाषाओं के समान पैटर्न को अपनाने वाले वातावरण का समर्थन करता है।JavaJava एक ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग भाषा है। Java काफी तेज, विश्वसनीय और सुरक्षित है। यह सबसे व्यापक रूप से उपयोग की जाने व

  1. - Java में volatile और transient के बीच अंतर

    volatile कीवर्ड का उपयोग मल्टीथ्रेडिंग वातावरण में किया जाता है जहां दो थ्रेड एक ही वैरिएबल को एक साथ पढ़ और लिख रहे होते हैं। volatile कीवर्ड परिवर्तनों को सीधे मेन मेमोरी में फ्लश करता है बजाय CPU कैश के। दूसरी ओर, transient कीवर्ड का उपयोग सीरियलाइज़ेशन के दौरान किया जाता है। जो फील्ड transient