sebix hat geschrieben:Als Ergänzung und zur Vollständigkeit eine Hinweis zum Überladen von Funktionen in C++:
C/C++ von Galileo Computing von Ulrich Kaiser und Christoph Kecher hat geschrieben:
Verschiedene Funktionen gleichen Namnes stellen in C++ kein Problem dar, sofern sie anhand ihrer Parametersignatur, d.h. durch Typ und/oder Anzahl ihrer Parameter, unterschieden werden können.
Achtung: In die Parametersignatur gehen weder der Returntyp noch die Default-Argumente einer Funktion ein!
Dazu kann ich auch nur raten. Default-Parameter bedeuten, dass Objekte eventuell erstellt und kopiert werden müssen, oftmals sind bei Defaults allerdings Optimierungen möglich. Setzt man einen Zeiger per Default auf NULL, so muss man fragen, ob der Zeiger NULL ist. Bei einer Überladung, die den Default-Parameter grundsätzlich weglässt, gibt es keinen Zeiger, also auch keine Frage.
Die Überladung macht mehr Tipparbeit, wer mehr Code produziert, riskiert mehr Fehler. Es sollten also auch nur Funktionen existieren, die möglichst häufig gerufen werden. Man sollte keine größere Anzahl von Überladungen für Primitive schreiben, bzw. Typen, die laufend im Einsatz sind. Die Überladungen sollten sich deutlich unterscheiden.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.