C++ 기본 매개변수
1. 개요
1.1 문서 개요
이 문서는 C++에서 기본 매개변수(default parameter)에 대해 설명합니다. 기본 매개변수는 함수 호출 시 일부 인자를 생략할 수 있도록 하여 함수의 사용 편의성을 높이는 기능입니다.
2. 내용
2.1 기본 매개변수의 선언
2.1.1 선언 예시
기본값은 함수 선언부에서 지정합니다.
void greet(std::string name = "Guest") {
std::cout << "Hello, " << name << std::endl;
}
호출 예:
greet(); // Hello, Guest
greet("Alice"); // Hello, Alice
2.2 기본값 지정 규칙
2.2.1 오른쪽부터 생략 가능
기본값은 오른쪽부터 순차적으로 지정하며, 중간 생략은 허용되지 않습니다.
void func(int a, int b = 2, int c = 3); // 가능
// void func(int a = 1, int b, int c = 3); // 오류
2.3 선언부와 정의부 분리 시 주의사항
2.3.1 기본값은 선언부에만 작성
기본 매개변수는 선언부에만 포함시켜야 하며, 정의부에 중복 작성해서는 안 됩니다.
// 선언부 (헤더)
void log(std::string msg = "default");
// 정의부 (소스)
void log(std::string msg) {
std::cout << msg << std::endl;
}
3. 마무리
C++의 기본 매개변수 기능은 함수 호출의 유연성을 제공하며, 함수 오버로딩을 일부 대체할 수 있습니다. 선언 위치, 생략 규칙, 선언·정의 분리에 따른 문법적 제약을 정확히 이해하고 사용하는 것이 중요합니다.