함수 매개변수의 기본값은 미리 정의할 수 있으며 함수를 호출할 때 인수를 전다랗지 않으면, 함수는 자동으로 미리 정의되어 있는 디폴트 인수값을 사용한다.
#include <iostream>
using namespace std;
int pow(int base, int exp = 2) {
int result = 1;
for (int i = 0; i < exp; i++)
result *= base;
return result;
}
int foo(); // 프로젝트내의 다른 소스파일의 함수
struct Person {
float weight;
float height;
};
Person p{ 67.1f, 154.2f };
void fooo(Person p0 = Person{ 20.1f, 123.2f }) {
cout << p0.weight << endl;
cout << p0.height << endl;
}
int main() {
cout << pow(3) << endl;
// 인자를 하나만 넣어도 2의 제곱이 실행되는 것을 볼 수 있다
cout << foo() << endl;
fooo(p);
fooo();
}
9
13
67.1
154.2
20.1
123.2