Default Parameters

Default parameters allow us to specify default values for function parameters. When a function is called, if an argument corresponding to a default parameter is omitted, the default value is automatically used.

#include <iostream>

// Basic function with default parameter
void greet(std::string name = "Guest") {
    std::cout << "Hello, " << name << "!" << std::endl;
}

int main() {
    greet();            // Uses default parameter: "Guest"
    greet("Alice");     // Uses provided parameter: "Alice"

    return 0;
}

In this example, the greet function has a default parameter for the name parameter. When the function is called without providing a name, the default value “Guest” is used.

Default Parameters with Multiple Arguments

Default parameters can be applied to multiple parameters, allowing for even more flexibility in function calls.

#include <iostream>

// Function with multiple default parameters
void printValues(int a, int b = 0, int c = 0) {
    std::cout << "Values: " << a << ", " << b << ", " << c << std::endl;
}

int main() {
    printValues(10);         // Uses defaults for b and c
    printValues(10, 20);     // Uses default for c
    printValues(10, 20, 30); // Uses provided values

    return 0;
}