Declaration and Definition

A function in C++ consists of a declaration (also known as a prototype) and a definition.

// Function declaration
int add(int a, int b);

// Function definition
int add(int a, int b) {
    return a + b;
}

// Calling the function
int result = add(5, 3); // result is 8

Function with Default Arguments

You can specify default values for function parameters.

int multiply(int a, int b = 1) {
    return a * b;
}

int result1 = multiply(5);    // result1 is 5 (5 * 1)
int result2 = multiply(5, 2); // result2 is 10 (5 * 2)

Function Overloading

You can define multiple functions with the same name but different parameter lists.

int add(int a, int b) {
    return a + b;
}

double add(double a, double b) {
    return a + b;
}

int result1 = add(5, 3);     // Calls int add(int, int)
double result2 = add(2.5, 3.5); // Calls double add(double, double)