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

C++ Paramètres par défaut (arguments)

Dans cet article, vous allez apprendre ce que sont les paramètres par défaut, comment les utiliser et la déclaration nécessaire pour les utiliser.

En C ++Dans la programmation, vous pouvez fournirFonctionValeur par défaut des paramètres.

L'idée derrière les paramètres par défaut est simple. Si la fonction est appelée en passant des paramètres, ces paramètres sont utilisés par la fonction.

Mais si aucun paramètre n'est passé lors de l'appel de la fonction, les valeurs par défaut sont utilisées.

Les valeurs par défaut sont transmises aux paramètres de la signature de la fonction.

Le fonctionnement des paramètres par défaut

Exemple : paramètres par défaut

// c++Le programme montre comment fonctionnent les paramètres par défaut
#include <iostream>
using namespace std;
void display(char ='*', int = 1);
int main()
{
    cout << "\nAucun paramètre n'est passé:\n";
    display();
    
    
    display('#');
    
    cout << "\nDeux paramètres sont passés:\n";
    display('$', 5);
    return 0;
}
void display(char c, int n)
{
    for(int i = 1; i <= n; ++i)
    {
        cout << c;
    }
    cout << endl;
}

Résultat de la sortie

Aucun paramètre n'est passé:
*
Le premier paramètre est passé:
#
Deux paramètres sont passés:
$$$$$

Dans le programme ci-dessus, vous pouvez voir que les valeurs par défaut sont assignées aux paramètres void display(char ='*',int = 1);

Tout d'abord, appeler la fonction sans passer de paramètres à display(). Dans ce cas, la fonction display() utilise à la fois les paramètres par défaut c = *et n = 1.

Puis, lors de la deuxième utilisation de la fonction, seul le premier paramètre est passé. Dans ce cas, la fonction ne utilise pas la valeur par défaut passée en premier. Elle utilise la valeur réelle passée en tant que premier paramètre c = #, et la valeur par défaut n = 1comme deuxième paramètre.

Lorsque le troisième display() est appelé, deux paramètres sont passés, tous deux n'utilisent pas les paramètres par défaut. Les valeurs passées sont respectivement c = $ et n = 5.

Erreurs courantes lors de l'utilisation des paramètres par défaut

  1. void add(int a, int b = 3, int c, int d = 4);
    La fonction ci-dessus ne peut pas être compilée. Vous ne pouvez pas sauter le paramètre par défaut entre deux paramètres.
    Dans ce cas, c doit également être assigné une valeur par défaut.
     

  2. void add(int a, int b = 3, int c, int d);
    La fonction ci-dessus ne compilera pas non plus. Vous devez fournir une valeur par défaut pour chaque paramètre après b.
    Dans ce cas, c et d devraient également être assignés des valeurs par défaut.
    Si seul un paramètre par défaut est nécessaire, assurez-vous que ce paramètre est le dernier paramètre. Par exemple : void add(int a, int b, int c, int d = 4);
     

  3. Si votre fonction effectue plusieurs opérations ou que la logique semble trop complexe, vous pouvez utiliser  Redéfinition de fonctionsMeilleure séparation de la logique.

  4. En tout cas, il devrait toujours être écrit une fonction, qui ne devrait être utilisée qu'à un seul objectif, même si des paramètres par défaut sont utilisés.