Default-Argumente
-
Hallo!
Was ist der Unterschie zwischen normalen Argumenten und Default-Argumenten einer Funktion?
MfG CSS
-
Am einem beispiel ist das ganz leicht zu erkennen
int fkt1(int a = 10){ ... } int fkt2(int a){ ... } //aufruf fkt2() ungültig fkt1() ist nicht ungültig
alles klar?
-
d.h. bei funktionen die default-parameter brauchst du diese nicht unbedingt angeben
zb: bei spjoes code
musst du a nicht angeben es wird automatisch 10 verwendetok?
-
d.h.
Default-Argumente werden schon bei ihrer Deklaration initialisiert und können später noch geändert werden.Normale Argumente werden erst beim Aufruf initialisiert.
Ist das richtig??
MfG CSS
-
CSS schrieb:
d.h.
Default-Argumente werden schon bei ihrer Deklaration initialisiert und können später noch geändert werden.Normale Argumente werden erst beim Aufruf initialisiert.
Ist das richtig??
MfG CSS
nein sie werden beide erst veim Aufruf initialisiert!
mfg
-
@CSS: nicht ganz:
wenn wir zB jetzt einen Funktions-Prototyp haben der wie folgt aussieht:
void fo(int a, char c); // diese Funktion hat keine default parameter // aufgerufen wird so zb so fo(65, 'A');
und hier mit default-Argumenten
void fo(int a, char c = 'A'); // diese Funktion hat einen default parameter // aufgerufen kann sie so werden fo(65); // hier benutzen wir den default Wert // aber auch so fo(12, 'i'); // hier wird nicht der default Wert benutzt
d.h.
wenn du denn zweiten Parameter der Funktion nicht mit uebergibst (in diesem Bsp den Parameter c)
wird der default-Wert ('A') benutzt
man kann aber einen Wert uebergeben wenn man nicht will das der default-Parameter benutzt werden sollich hoffe das war jetzt etwas verständlicher
-
leo aka qsch schrieb:
ich hoffe das war jetzt etwas verständlicher
Sehr verständlich! Vielen Dank!
MfG CSS