Untersuchen wir das Überladen in C / C ++ / C #

Durch das Überladen von Funktionen können Funktionen in Computersprachen wie C, C ++ und C # denselben Namen mit unterschiedlichen Parametern haben. Überladen von Bedienern ermöglicht Bedienern, auf die gleiche Weise zu arbeiten. In C # funktioniert das Überladen von Methoden mit zwei Methoden, die dasselbe Ziel erreichen, jedoch unterschiedliche Typen oder Anzahlen von Parametern aufweisen.

Ein Beispiel für Funktionsüberladung

Anstatt eine anders benannte Funktion zum Sortieren der einzelnen Array-Typen zu haben, wie z.

Sie können denselben Namen mit verschiedenen Parametertypen verwenden, wie hier gezeigt:

Der Compiler kann dann abhängig vom Parametertyp die entsprechende Funktion aufrufen. Überlastungsauflösung ist der Begriff, der für die Auswahl der geeigneten Überlastungsfunktion verwendet wird. 

Bedienerüberladung

Ähnlich wie beim Überladen von Funktionen ermöglicht das Überladen von Operatoren dem Programmierer, Operatoren wie +, - und * neu zu definieren. In einer Klasse für komplexe Zahlen, in der jede Zahl einen Real- und einen Imaginärteil hat, ermöglichen überladene Operatoren beispielsweise, dass der folgende Code funktioniert:

Solange + für den Typ Komplex überladen ist.

Vorteile des Überladens beim Schreiben von Code

  • Am Ende haben Sie Code, der einfacher zu lesen ist
  • Überladen ist bequem und intuitiv
  • Vermeidet klobige Syntax 
  • Konsistenz in Benennung und Notation
  • Funktioniert gut in Vorlagen und anderen Konstrukten, wenn Sie den Variablentyp zum Zeitpunkt des Codeschreibens nicht kennen.