Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657

    [c++] Parametri delle funzioni

    come posso rendere opzionale un parametro di una funzione?

  2. #2

    Re: [c++] Parametri delle funzioni

    Originariamente inviato da FinalFantasy
    come posso rendere opzionale un parametro di una funzione?
    Interesserebbe molto pure a me...........



    ciao e grazie

    attendiamo risposte..
    Vediamo..sogni che diventano professione...passioni che diventano vita... Free as in Freedom...

  3. #3
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657
    speriamo almeno ke qlk ci aiuti

  4. #4
    Utente di HTML.it L'avatar di anx721
    Registrato dal
    Apr 2003
    Messaggi
    2,352
    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.


  5. #5
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657
    Questo sistema può andare, però mi interesserebbe apprendere il sistema di printf.

  6. #6
    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.

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2001
    Messaggi
    63
    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

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.