Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> C Taal

Standaardargumenten voor programmeren in C++ (parameters)

C++ Programmering Standaardargumenten (Parameters)

In deze tutorial leren we C++ standaardargumenten en hun werking met behulp van voorbeelden.

In C++-programmering kunnen we standaardwaarden voor functieparameters leveren.

Als een functie met standaardargumenten wordt aangeroepen zonder het doorgeven van argumenten, dan worden de standaardparameters gebruikt.

Als er echter argumenten worden doorgegeven tijdens het aanroepen van de functie, worden de standaardargumenten genegeerd.


Werking van standaardargumenten

We kunnen de werking van standaardargumenten uit de bovenstaande afbeelding begrijpen:

  1. Wanneer temp() wordt aangeroepen, worden beide standaardparameters door de functie gebruikt.
  2. Wanneer temp(6) wordt aangeroepen, wordt het eerste argument 6 terwijl de standaardwaarde wordt gebruikt voor de tweede parameter.
  3. Wanneer temp(6, -2.3) wordt aangeroepen, worden beide standaardparameters overschreven, wat resulteert in i = 6 en f = -2.3 .
  4. Wanneer temp(3.4) wordt doorgegeven, gedraagt ​​de functie zich op een ongewenste manier omdat het tweede argument niet kan worden doorgegeven zonder het eerste argument door te geven.

    Daarom 3.4 wordt doorgegeven als het eerste argument. Aangezien het eerste argument is gedefinieerd als int , de waarde die daadwerkelijk wordt doorgegeven is 3 .

Voorbeeld:standaardargument

#include <iostream>
using namespace std;

// defining the default arguments
void display(char = '*', int = 3);

int main() {
    int count = 5;

    cout << "No argument passed: ";
    // *, 3 will be parameters
    display(); 
    
    cout << "First argument passed: ";
     // #, 3 will be parameters
    display('#'); 
    
    cout << "Both arguments passed: ";
    // $, 5 will be parameters
    display('$', count); 

    return 0;
}

void display(char c, int count) {
    for(int i = 1; i <= count; ++i)
    {
        cout << c;
    }
    cout << endl;
}

Uitvoer

No argument passed: ***
First argument passed: ###
Both arguments passed: $$$$$

Hier is hoe dit programma werkt:

  1. display() wordt aangeroepen zonder enige argumenten door te geven. In dit geval display() gebruikt beide standaard parameters c = '*' en n = 1 .
  2. display('#') wordt aangeroepen met slechts één argument. In dit geval wordt de eerste '#' . De tweede standaardparameter n = 1 wordt behouden.
  3. display('#', count) wordt aangeroepen met beide argumenten. In dit geval worden standaardargumenten niet gebruikt.

We kunnen de standaardparameters ook definiëren in de functiedefinitie zelf. Het onderstaande programma is gelijk aan het bovenstaande.

#include <iostream>
using namespace std;

// defining the default arguments
void display(char c = '*', int count = 3) {
    for(int i = 1; i <= count; ++i) {
        cout << c;
    }
    cout << endl;
}

int main() {
    int count = 5;

    cout << "No argument passed: ";
    // *, 3 will be parameters
    display(); 
    
    cout << "First argument passed: ";
     // #, 3 will be parameters
    display('#'); 
    
    cout << "Both argument passed: ";
    // $, 5 will be parameters
    display('$', count); 

    return 0;
}

Dingen om te onthouden

  1. Zodra we een standaardwaarde voor een parameter hebben opgegeven, moeten alle volgende parameters ook standaardwaarden hebben. Bijvoorbeeld
    // Invalid
    void add(int a, int b = 3, int c, int d);
    
    // Invalid
    void add(int a, int b = 3, int c, int d = 4);
    
    // Valid
    void add(int a, int c, int b = 3, int d = 4);
  2. Als we de standaardargumenten definiëren in de functiedefinitie in plaats van het functieprototype, dan moet de functie worden gedefinieerd vóór de functieaanroep.
    // Invalid code
    
    int main() {
        // function call
        display();
    }
    
    void display(char c = '*', int count = 5) {
        // code
    }

C Taal

  1. Naamruimten in C#-programmering
  2. C++-operators
  3. C++ Opmerkingen
  4. Array doorgeven aan een functie in C++-programmering
  5. C++-klassesjablonen
  6. C Programmeren van operators
  7. Soorten door de gebruiker gedefinieerde functies in C-programmering
  8. C Zelfstudie
  9. C - Functies
  10. C - Variabele argumenten
  11. C++-overzicht