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

C# में डेलीगेट्स क्या हैं?


C# में डेलीगेट मेथड का रेफरेंस होता है। एक डेलीगेट एक रेफरेंस टाइप वेरिएबल है जो एक मेथड का रेफरेंस रखता है। रेफरेंस को रनटाइम पर बदला जा सकता है।

डेलीगेट्स विशेष रूप से इवेंट्स और कॉल-बैक मेथड्स को लागू करने के लिए उपयोग किए जाते हैं। सभी डेलीगेट्स अप्रत्यक्ष रूप से System.Delegate क्लास से डेराइव्ड होते हैं।

आइए देखें कि C# में डेलीगेट्स कैसे घोषित करें।

delegate <रिटर्न टाइप> <डेलीगेट-नाम> <पैरामीटर सूची>

आइए C# में डेलीगेट्स के साथ काम करना सीखने के लिए एक उदाहरण देखें।

उदाहरण

using System; using System.IO; namespace DelegateAppl {    class PrintString {       static FileStream fs;       static StreamWriter sw;       // डेलीगेट घोषणा       public delegate void printString(string s);       // यह मेथड कंसोल पर प्रिंट करता है       public static void WriteToScreen(string str) {          Console.WriteLine("The String is: {0}", str);       }       //यह मेथड फाइल में प्रिंट करता है       public static void WriteToFile(string s) {          fs = new FileStream("c:\\message.txt",          FileMode.Append, FileAccess.Write);          sw = new StreamWriter(fs);          sw.WriteLine(s);          sw.Flush();          sw.Close();          fs.Close();       }       // यह मेथड डेलीगेट को पैरामीटर के रूप में लेता है और आवश्यकतानुसार मेथड्स को कॉल करने के लिए इसका उपयोग करता है       public static void sendString(printString ps) {          ps("Hello World");       }       static void Main(string[] args) {          printString ps1 = new printString(WriteToScreen);          printString ps2 = new printString(WriteToFile);          sendString(ps1);          sendString(ps2);          Console.ReadKey();       }    }   }

आउटपुट

The String is: Hello World

  1. - C# में Indexers क्या हैं?

    C# Indexers: ऑब्जेक्ट को Array की तरह Index करना इंडेक्सर (Indexer) एक विशेष सिंटैक्स है जो किसी क्लास या स्ट्रक्चर के ऑब्जेक्ट को एरे की तरह [] ऑपरेटर का उपयोग करके एक्सेस करने की अनुमति देता है। यह आंतरिक डेटा स्ट्रक्चर (जैसे एरे, लिस्ट, डिक्शनरी) को एनकैप्सुलेट करता है और कस्टम एक्सेस लॉजिक प्रदा

  1. - C# में नेमस्पेसेस क्या हैं

    नेमस्पेस नामों के एक सेट को दूसरे से अलग रखने का एक तरीका प्रदान करने के लिए है। नेमस्पेस डेफिनिशन namespace कीवर्ड से शुरू होती है जिसके बाद नेमस्पेस नाम आता है - namespace namespace_name { // code declarations } नेमस्पेस डिफाइन करें - namespace namespace_name { // code declarations } निम्न

  1. - C# में डेलीगेट्स क्या हैं?

    C# में डेलीगेट मेथड का रेफरेंस होता है। एक डेलीगेट एक रेफरेंस टाइप वेरिएबल है जो एक मेथड का रेफरेंस रखता है। रेफरेंस को रनटाइम पर बदला जा सकता है।डेलीगेट्स विशेष रूप से इवेंट्स और कॉल-बैक मेथड्स को लागू करने के लिए उपयोग किए जाते हैं। सभी डेलीगेट्स अप्रत्यक्ष रूप से System.Delegate क्लास से डेराइव्ड