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

सी # में अतिभारित विधि और अस्पष्टता

विधि ओवरलोडिंग के साथ, आप एक ही फ़ंक्शन नाम के लिए एक ही दायरे में कई परिभाषाएँ रख सकते हैं। फ़ंक्शन की परिभाषा तर्क सूची में प्रकार और/या तर्कों की संख्या से एक दूसरे से भिन्न होनी चाहिए।

आइए एक उदाहरण देखते हैं। इसमें कॉल एक ही पैरामीटर के साथ मेथड में जाएगी -

उदाहरण

using System;

class Student {
   static void DisplayMarks(int marks1 = 90) {
      Console.WriteLine("Method with one parameter!");
   }

   static void DisplayMarks(int marks1, int marks2 = 95) {
      Console.WriteLine("Method with two parameters!");
   }

   static void Main() {
      DisplayMarks(97);
   }
}

अब देखते हैं कि अस्पष्ट कॉल क्या बनाता है। यहां भ्रम यह है कि दूसरी विधि को डिफ़ॉल्ट के रूप में दो तर्कों की आवश्यकता होगी, जबकि पहली मेथिड को डिफ़ॉल्ट होने के लिए एक तर्क की आवश्यकता होगी। यह अस्पष्टता पैदा करता है।

उदाहरण

using System;

class Student {
   static void DisplayMarks(int marks1 = 90, int marks2 = 80) {
      Console.WriteLine("Method with two parameters!");
   }

   static void DisplayMarks(int marks1, int marks2 = 80, marks3 = 98) {
      Console.WriteLine("Method with three parameters!");
   }

   static void Main() {
      DisplayMarks(80);
   }
}

  1. किसी फ़ंक्शन को फ़ंक्शन और विधि के रूप में कैसे आमंत्रित करें?

    फ़ंक्शन और मेथड के रूप में फंक्शन को इनवोक करने के लिए निम्नलिखित कोड है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title&

  1. जावा में स्टेटिक बाइंडिंग और डायनेमिक बाइंडिंग

    हां! जब संकलक जानता है कि विधि निष्पादन के लिए किन वस्तुओं का उपयोग किया जाना है, तो यह वस्तु के संदर्भ को स्थिर रूप से बांध सकता है। उदाहरण के लिए, स्थिर चर, निजी, अंतिम चर स्थिर बंधन का उपयोग कर रहे हैं। वहीं अगर रनटाइम पर ऑब्जेक्ट आइडेंटिफिकेशन करना है तो डायनेमिक बाइंडिंग का इस्तेमाल किया जाता ह

  1. पायथन में विधि और कार्य के बीच अंतर

    फ़ंक्शन एक फ़ंक्शन किसी विशिष्ट कार्य को करने के लिए कोड का एक ब्लॉक होता है, जिसमें इसका अपना दायरा होता है और इसे नाम से बुलाया जाता है। सभी फ़ंक्शंस में शून्य (नहीं) तर्क या एक से अधिक तर्क हो सकते हैं। बाहर निकलने पर, कोई फ़ंक्शन एक या अधिक मान लौटा सकता है या नहीं। बेसिक फंक्शन सिंटैक्स def fu