Überladen Von Methoden?
lima-city → Forum → Programmiersprachen → C/C++ und D
anzahl
aufruf
beachten
beispiel
code
cool danke
funktion
kleine regel
kleinen beispiel
leute
live schrieb
methode
parameter
string
typ
umgehen
untere funktion
unterscheiden
unterscheidung
unterschiedlichen parametern
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Überladen ist einfach nur mehrere Methoden(die den selben Namen haben) mit unterschiedlichen Parametern deklarieren:
void foo(string a, int b) { for(int i = 0; i < b; i++) std::cout << a << std::endl; } void foo(string a) { std::cout << a << std::endl; }
Ok, dämliches Beispiel, aber so sieht das dann ungefähr aus.
Wenn ich jetzt foo(\"blubb\") aufrufe, wird natürlich die untere Funktion aufgerufen, weil ich ja keinen zweiten(int) parameter angebe.
Bei foo(\"blubb\", 10) wird eben die erste aufgerufen, weil ich einen 2ten (int)Parameter angebe.
Beitrag geändert: 30.3.2008 16:39:13 von planschkuh -
ah cool danke^^
jetz hab ichs auch verstanden^^
du musst aber eine kleine regel beachten: die überladenen Funktionen müssen sich in der Anzahl der Übergabeparameter und/oder ein Übergabeparameter muss sich im Typ unterscheiden! Eine Unterscheidung anhand des return werter reicht nicht aus!
Gruß
the live -
the-live schrieb:
du musst aber eine kleine regel beachten: die überladenen Funktionen müssen sich in der Anzahl der Übergabeparameter und/oder ein Übergabeparameter muss sich im Typ unterscheiden! Eine Unterscheidung anhand des return werter reicht nicht aus!
Gruß
the live
Das kannst aber leicht umgehen. Falls du mal 2 methoden hast, die die selben übergabewerte hätten, kannst du ja einfach bei einem als dritten wert ein int irgendwas geben und da gibst ihm halt 0 oder sonstwas mit... dann werden Sie unterschieden...
MfG
David -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage