C# operator overloading in hindi-C# ऑपरेटर ओवरलोडिंग क्या है?

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

C# operator का overloading

  • C# में operators को user को defined types जैसे की classes,structure आदि के साथ ही प्रयोग करने के लिए redefine करना operator overloading कहलाता है
  • जैसे की आपको पता होता है की c# में operators को primitive types integer ,double आदि के साथ ही प्रयोग किया जाता है लेकिन c# में आपको इन operators को किसी user को defined type के सन्दर्भ में overload(redefine) करने की भी ability करने की भी ability को प्रोविडे करती है
  • operators को overload करने का मुख्य उद्धेश्य user defined type के साथ perform होने वाले operations को simplify करना होता है example के लिए आप किसी class के object के साथ overloaded unary plus operator का प्रयोग करके आप आसानी से उसके सभी data को members की values को increase कर सकते है
  • operators को overload करने के लिउ special operator overload method का प्रयोग किया जाता है इस method में आप operator को user को defined type के अनुरूप operation को perform करने के लिए code लिखते है

सभी c# में operators को overload नहीं किया जा सकता है लेकिन c# में operators की लिस्ट(list) आपको निचे दिया जा रहा है की जिन्हें overload नहीं किया जा सकता है

  • [] array index operator
  • () conversion operator
  • && and || operator
  • new operator
  • is operator
  • as operator
  • = Equals operator
  • . dot operator
  • ?: condition operator
  • -> pointer reference operator

उपर दिए जा रहे operators के आलावा बाकी सभी unary और binary c# में operators को overload किया जा सकता है

जब आप operators को overload करते है तो उनके basic functionality को change नहीं होती है example के लिए आप + operators को overload करके इसे subtraction को perform के लिए नहीं डिफाइन कर सकते है

overload किये जाने पर भी operators को primitive types के साथ basic functionality के साथ ही कार्य करते है यानी की जब + operator को दो integers के साथ ही प्रयोग किया जायेगा तो वह उनके addition को ही perform करेगा

c# operators overload method

operator overload method को operator symbol(+,- आदि ) के साथ ही डिफाइन किया गया है की एक special method होता है इस method में आप डिफाइन करते है तो की operator किसी user defined types के साथ ही प्रयोग किये जाने पर किस प्रकार से operation को perform करेगा

c# operator overload method का general syntax आपको निचे दिया जा रहा है

public static return-type operator-keyword operator-symbol(argument-list)
{
      //code that redefine operator to work with a user defined type
}

जैसा की आप उपर दिए गए syntax में आप देख सकते है की operator overload method हमेशा public और static को डिफाइन किया जाना चाहिए operator method का return type वह user डिफाइन type होता है जिसके लिए आप इस method को overload किया जाता है

operator method को define करने के लिए operator keyword का प्रयोग किया जाता है operator keyword के बाद वह operator symbol को डिफाइन किया जाता है जिसे आप overload करना चाहिए

निचे कुछ आपको बाते दी जा रही है जिनका आपको overload operator method define करते समय ध्यान रखना चाहिए

  • operator overload method को हमेशा आप उस type के member के रूप में डिफाइन किया जाना चाहिए जिसका लिए आप operator को overload कर रहे है
  • operator overload method की return value operation का रिजल्ट होती है
  • operator overload method को void नहीं डिफाइन किया जा सकता है

जब आप किसी unary operator को overload करने के लिए operator method को डिफाइन करते है तो उसमे एक ही parameter को डिफाइन किया जाता है इसका syntax आपको निचे दिया जा रहा है

public static return-type operator-keyword operator-symbol(Arg1)
{
    //code here
}

जब आप किसी binary operator को overload करने के लिए operator method को डिफाइन करते है तो उसमे दो parameters को डिफाइन किये जाते है

public static return-type operator-keyword operator-symbol(Arg1,Arg2)
{
   //code here
}

example of c# operator overloading

C# में operator को overload करना आपको निचे example के द्वारा समझा जा सकता है

using System;
class myClass
{
       Public int Num1=10;
       Public int Num2=20;
       Public void display()
         {
               Console.WriteLine(“Num 1 is :{0}”,Num1);
               Console.WriteLine(“Num 2 is {0}”,Num2);
           }
          Public static myClass operator ++(myClass 0)
        {
                 0.Num1+=1;
                 0.Num2+=1;
                  Return 0;
             }
}
Class myFinalClass
{
       Static void Main(string[] args)
        {
                 myClass obj=new myClass();
                 obj.display();
                 obj++;
                   obj.display();
            }
}

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

Num1 is 10
Num2 is 20
Num1 is 11
Num2  is 21

 

c# operator overloading in hindi

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

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

Leave a Comment