Heim  >  Artikel  >  Backend-Entwicklung  >  Überladene Methoden und Mehrdeutigkeit in C#

Überladene Methoden und Mehrdeutigkeit in C#

WBOY
WBOYnach vorne
2023-09-06 08:45:10748Durchsuche

C# 中的重载方法和歧义

Mit Methodenüberladung können Sie mehrere Definitionen desselben Funktionsnamens im selben Bereich haben. Funktionsdefinitionen müssen sich in der Art und/oder Anzahl der Parameter in der Parameterliste unterscheiden.

Schauen wir uns ein Beispiel an. Hier geht der Aufruf an eine Methode mit einem einzigen Parameter –

Beispiel

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);
   }
}

Jetzt wollen wir sehen, was einen mehrdeutigen Aufruf erzeugt. Die Verwirrung hier besteht darin, dass die zweite Methode zwei Standardparameter erfordert, während die erste Methode die Standardeinstellung eines Parameters erfordert. Dadurch entsteht Unklarheit.

Beispiel

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);
   }
}

Das obige ist der detaillierte Inhalt vonÜberladene Methoden und Mehrdeutigkeit in C#. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen