// Make a parameter optional in C++ by giving it a default value
// in the function declaration. When the caller doesn’t
// provide that argument, the default is used.
#include <iostream>
#include <string>
#include <ctime>
// Multiple Optional Parameters
void logMessage(std::string msg, int level = 1, bool timestamp = false) {
std::cout << "Level " << level << ": " << msg;
if (timestamp) {
std::time_t ts = std::time(nullptr);
std::cout << " [Timestamp: " << ts << "]\n";
}
std::cout << "\n";
}
int main() {
logMessage("Starting");
logMessage("Warning", 2);
logMessage("Critical", 3, true);
}
/*
run:
Level 1: Starting
Level 2: Warning
Level 3: Critical [Timestamp: 1777451910]
*/