C++ Functions
Overview
Functions are reusable blocks of code that perform specific tasks. C++ extends C's function capabilities with features like function overloading, default parameters, and templates.
Basic Function Syntax
cpp
#include <iostream>
// Function declaration (prototype)
int add(int a, int b);
double multiply(double x, double y = 2.0); // default parameter
// Function definition
int add(int a, int b) {
return a + b;
}
double multiply(double x, double y) {
return x * y;
}
int main() {
int result1 = add(5, 3);
double result2 = multiply(4.5); // uses default y=2.0
std::cout << "Addition: " << result1 << std::endl;
std::cout << "Multiplication: " << result2 << std::endl;
return 0;
}Function Overloading
cpp
#include <iostream>
#include <string>
// Function overloading - same name, different parameters
int calculate(int a, int b) {
return a + b;
}
double calculate(double a, double b) {
return a * b;
}
std::string calculate(const std::string& a, const std::string& b) {
return a + " " + b;
}
int main() {
std::cout << calculate(5, 3) << std::endl; // 8
std::cout << calculate(2.5, 4.0) << std::endl; // 10.0
std::cout << calculate("Hello", "World") << std::endl; // Hello World
return 0;
}Inline Functions
cpp
inline int square(int x) {
return x * x;
}