C# Delegates in hindi-C# देलेगाटेस क्या है?

हेल्लो दोस्तों ! आज के इस पोस्ट में आपको c# delegate in hindi के बारे में आपको बताया जा रहा है की क्या होता है कैसे काम करता है तो चलिए शुरू करते है

c# delegates का परिचय

c# में delegate एक reference type होता है एक delegate किसी भी विशेष signature(parameter लिस्ट और return type) के method के reference (pointer) को represent(hold) करता है

एक delegates को आप type safe फंक्शन को pointer भी कह सकते है delegates type को safe इसलिए कहलाते है क्योकि ये केवल उही उन्ही methods का reference को hold करते है जिन methods का return type और उसके parameters का type और सख्या delegate से match होती है

delegate को फंक्शन को pointer इसलिए कहा जाता है क्योकि ये फंक्शन को refer करते है और इसके द्वारा आप किसी भी फंक्शन को execute करवाया जा सकता है

किसी भी दुसरे reference को type की तरह ही delegate के भी instance (objects) को क्रिएट किये जाते है आप delegate के instance को किसी भी compatible को signature वाले method से associate कर सकते है इसके बाद आप उस method का delegate को instance के द्वारा call कर सकते है

सभी delegate types को .net को framework की delegate के द्वारा आप एक method को दूसरी method के अन्दर parameter के रूप में pass कर सकते है delegate की methods को parameters के रूप में pass करने की ability को provide करती है

callback methods को ऐसे methods होते है जो किसी भी certain event के completion पर execute होते है जैसे की कोई भी event generate होने पर delegate के द्वारा आप method automatically call किये जा सकते है

syntax of c# delegates

delegate का प्रयोग करने के लिए 3 steps होते है सबसे पहले delegate को डिक्लेअर किया जाता है इसके बाद delegate को instantiate (object create करना)किया जाता है आखिर में delegates को invoke (call) किया जाता है

इन तीनो steps के लिए जरुरी syntax आपको निचे दिया जा रहा है

declaring a delegates

निचे c# delegates को डिक्लेअर करने का generate syntax आपको निचे दिया जा रहा है

Access-modifier delegate-keyword return-type delegate-name(parameter-list);

जैसा की आप उपर दिए गए syntax में आप देख सकते है की delegate को delegate keyword के द्वारा डिक्लेअर किया जाता है delegate का return type वाही होना चाहिए जो की refer किये जाने वाले method का है delegate के parameter की सख्या आप और उनका type भी refer किये जाने वाले methods को match होना चाहिए

instantiating a delegate

delegate को डिक्लेअर करने के बाद उसका instance को create किया जाता है एक delegate का instance method का नाम को provide करके क्रिएट किया जाता है यह उस method का नाम होता है जिसे आप delegate के द्वारा आप refer करने चाहते है

एक बार में object को create होने के बाद जब delegate को call किया जाता है तो वह call method को delegate की द्वारा pass किया जाता है

delegate को pass किये गए arguments भी methods को pass कर दिया जाता है यदि method कोई value को return करता है तो वह value को delegate के caller को return हो जाती है

किसी भी delegate का instance आप दो तरह से क्रिएट कर सकते है पहले तरीके में आप किसी भी class के object की तरह new keyword के द्वारा delegate का object को create कर सकते है इसका syntax आपको निचे दिया जा रहा है

Delegate-name object-name=class-object.method-name;

दोनों ही तरीके के द्वारा आप delegate का instance को create होता है और दोनों ही तरीके में जिस method को आप refer करना चाहते है उसका नाम डिफाइन करना होता है

यदि method non-static है तो उसे आप class object के द्वारा डिफाइन करते है यदि आप method को static है तो उसे class के नाम के द्वारा डिफाइन किया जायेगा

invoking delegate

एक बार में delegate का object को create करने के बाद आप उस object को actual method की तरह से प्रयोग (call) कर सकते है इसका syntax आपको निचे दिया जा रहा है

delegate-object-name(argument);

delegate को invoke(call) करते समय  किसी भी नार्मल method की ही तरह उसमे argument को pass किये जाते है

passing delegate as argument

एक delegate को object को आप किसी method में argument के रूप में pass कर सकते है जिस प्रकार से आप नार्मल variables को parameter के रूप में डिफाइन करते समय आप उनके type int,float आदि में डिफाइन करते है उसी तरह के delegates का नाम type के रूप में प्रयोग किया जाता है और उसके बाद parameter का नाम लिखा जाता है इसलिए इसका syntax आपको निचे दिया जा रहा है

Access-modifier return-type metho
d-name(delegate-name parameter-name,other-parameter-list)
{
      //function code here
}

example of c# delegates

c# में delegates के प्रयोग को एक simple example के द्वारा समझाया जा रहा है

using System;
public delegate string printDelegate();
//delegates declaration
Class delegateDemo
{
     Public string printMethod()  //method 
that is associated with delegates
        {
              Return “hello”;
          }
          Public stirng
delegateMethod(printDelegate del) 
 //method that take delegate as argument
        {
              String msg;
              Msg=del();
              Return msg;
        }
}
Class delegateDemoFinal
{
        Static void Main(string[] args)
          {
                String msg;
                 delegateDemo dd=new delegateDemo(); 
 //class object
             printDelegate del=new printDelegate(dd.printMethod);  
//delegate object
                 msg=dd.delegateMethod(del);  
//calling class method by passing delegate as parameter
                Console.Write.Line(msg);
          }
}

उपर दिए गए example में आपको निचे इसका आउटपुट दिया जा रहा है

hello

 

c# delegate in hindi

reference-https://www.tutorialspoint.com/csharp/csharp_delegates.htm

निवेदन:-आप सभी छात्र –छात्रों से निवेदन है की अगर आपको ये Topic(c# delegate in hindi) या post अच्छा लगा हो तो कृपया आप इस वेबसाइट के बारे में अपने दोस्तों को जरुर बताये और -अगर कोई topic(c# delegate in hindi) से संबधित प्रश्न हो तो कमेंट्स(comments) आपके लिए ही बना है और किसी Subject के लेकर भी कोई प्रश्न हो तो कमेंट करे “आपका comments हमारे लिए बहुमूल्य है “   *_*धन्यवाद

Leave a Comment