본문 바로가기
C C++/C언어 기초

[C++] 함수 매개변수의 디폴트 값

by Go! Jake 2022. 7. 7.

C++에서는 함수의 매개 변수의 디폴트 값을 지정하여 어느 값이 인자에 전달되지 않더라도 디폴트 값을 사용할 수 있도록 설정할 수 있습니다.

함수 매개변수의 디폴트 값

아무 인자도 입력되지 않으면, 미리 지정한 기본 값이 매개 변수에 들어갈 수 있습니다.

#include <iostream>

int calc(int a = 2, int b = 10)
{
	return a*b;
}

int main()
{
	std::cout<<calc();
	return 0;
}

위와 같이 main 함수에서 calc()로 어느 인자도 넣지 않았음에도 불구하고 20이라는 출력 값이 나오게 됩니다.

 

아래와 같이 부분적으로도 가능합니다. 다만 '오른쪽 매개 변수'부터 왼쪽 순으로 디폴트 값을 지정 해 줘야 합니다. 왼쪽만 채워져 있으면 컴파일 되지 않습니다. 아래 예시입니다.

#include <iostream>

int calc(int a, int b = 10)
{
	return a*b;
}

int main()
{
	std::cout<<calc(2);
	return 0;
}

int a 매개 변수는 2가 전달되었고, 비어있던 int b는 10이 디폴트 값으로 채워져 20이라는 출력이 나왔습니다.

댓글