English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Parametri predefiniti C++ (argomenti)

In questo articolo, imparerai cosa sono i parametri predefiniti, come usarli e la necessità delle dichiarazioni per usarli.

In programmazione C++, è possibile fornireFunzioneValori predefiniti dei parametri

L'idea dietro i parametri predefiniti è semplice. Se si chiama la funzione passando parametri, questi parametri vengono utilizzati dalla funzione.

Ma se non si passano parametri alla chiamata della funzione, si utilizzano i valori predefiniti.

I valori predefiniti vengono assegnati ai parametri nella specifica della funzione.

Come funzionano i parametri predefiniti

Esempio: Parametri predefiniti

// Programma C++ per dimostrare come funzionano i parametri predefiniti
#include <iostream>
using namespace std;
void display(char = '*', int = 1);
int main()
{
    cout << "\nNon vengono passati parametri:\n";
    display();
    
    cout << "\nIl primo parametro viene passato:\n";
    display('#');
    
    cout << "\nDue parametri vengono passati:\n";
    display('$', 5);
    return 0;
}
void display(char c, int n)
{
    for(int i = 1; i <= n; ++i)
    {
        cout << c;
    }
    cout << endl;
}

Risultato di output

Non vengono passati parametri:
*
Il primo parametro viene passato:
#
Due parametri vengono passati:
$$$$$

Nel programma sopra, è possibile vedere l'allocazione di valori predefiniti ai parametri void display(char = '*', int = 1);.

Prima di tutto, chiamare la funzione senza passare alcun parametro a display(). In questo caso, la funzione display() utilizza contemporaneamente i parametri predefiniti c = * e n = 1.

Poi, la seconda volta si utilizza la funzione passando solo il primo parametro. In questo caso, la funzione non utilizza il primo valore predefinito passato. Utilizza come primo parametro passato c = # e come secondo parametro il valore predefinito n = 1.

Quando viene chiamata la terza volta display() vengono passati due parametri, entrambi senza utilizzare i parametri predefiniti. I valori passati sono c = $ e n = 5.

Errori comuni nell'uso dei parametri predefiniti

  1. void add(int a, int b = 3, int c, int d = 4);
    La funzione sopra indicata non può essere compilata. Non è possibile saltare un argomento predefinito tra due argomenti.
    In questo caso, c deve essere assegnato un valore predefinito.
     

  2. void add(int a, int b = 3, int c, int d);
    La funzione sopra non verrà compilata. Dovrete fornire un valore predefinito per ogni parametro dopo b.
    In questo caso, anche c e d dovrebbero essere assegnati valori predefiniti.
    Se si desidera utilizzare solo un parametro predefinito, assicurarsi che sia l'ultimo parametro. Ad esempio: void add(int a, int b, int c, int d = 4);
     

  3. Se la vostra funzione esegue più operazioni o la logica sembra troppo complessa, è possibile utilizzare  Sovraccarico di funzioneMigliorare la separazione della logica.

  4. In ogni caso, dovrebbe sempre essere scritta una funzione che serva solo a un unico scopo, anche se si utilizzano parametri predefiniti.