come posso rendere opzionale un parametro di una funzione?
come posso rendere opzionale un parametro di una funzione?
Interesserebbe molto pure a me...........Originariamente inviato da FinalFantasy
come posso rendere opzionale un parametro di una funzione?
ciao e grazie
attendiamo risposte..
Vediamo..sogni che diventano professione...passioni che diventano vita... Free as in Freedom...
speriamo almeno ke qlk ci aiuti
Puoi specificare un valore di default per gli ultimi parametri di una funzione. Se un tale parametro viene omesso nella chiamata, il compilatore gli assegnerà appunto il suo valore di default.
Esempio:
int fun(int a, int b = 5);
poi quando ti serve puoi chiamare
fun(1, 2); //chiamata normale
oppure
fun(1); //chiamata fatta non passando il secondo parametro
che corrisponde a
fun(1, 5);
E' importante sottolineare che possono esere opzionali solo gli ultimi argomenti, o meglio, una volta che rendo un parametro opzionale, tutti quelli che lo seguono devono essere opzionali.
Se poi intendi come fare per avere funzioni con un numero arbitrario di parametri, come ad esempio la funzione printf, è un altro argomento.
Questo sistema può andare, però mi interesserebbe apprendere il sistema di printf.
io di solito uso l'overloading delle funzioni, magari è più lungo ma alla fine sono più comodo nel leggere/modificare il codice.
nel tuo caso diventerebbe:
int fun(int a);
int fun(int a, int b);
devi dichiarare ovviamente entrambe le funzioni.
tipo
int fun(int a) {printf("%d", a);}
int fun(int a, int b) {printf("%d %d", a, b);}
dA .. foto di viaggio
L'esperienza è il tipo di insegnante più difficile.
Prima ti fa l'esame, e poi ti spiega la lezione.
printf ha come prototipo:
printf(const char*,...);
il parametro ... indica che ci puo' essere un numero variabile di argomenti tra 0 e nessuno, attenzione pero' che tra gli argomenti ALMENO uno deve esserci,
funzione(...);
sarebbe errato mentre
funzione(int mioparametro,...);
è ok
Il sesso sicuro è importante, non fate mai l'amore su un'impalcatura.
Against TCPA: Against Palladium