함수의 매개변수를 다음과 같은 형태로 선언하는 것이 가능하다.
int MyFuncOne(int num=7)
{
return num+1;
}
int MyFuncTwo(int num1=5, int num2=7)
{
return num1+num2;
}
이에 대한 의미는 "함수호출 시 인자를 전달하지 않으면 기본값으로 설정된 것이 전달된 것으로 간주하겠다" 라는 의미이다.
그리고 한가지 추가사실은
"매개변수에 디폴트 값이 설정되어 있으며, 선언된 매개변수의 수보다 적은 수의 인자전달이 가능하다. 그리고 전달되는 인자는 왼쪽에서부터 채워져 나가고, 부족분은 디폴트 값으로 채워진다."
이러한 이유로 다음과 같은 형태로 부분적인 디폴트 값 설정이 가능하다.
int YourFunc(int num1, int num2, int num3=3) { . . . } (o)
int YourFunc(int num1, int num2=5, int num3=3) { . . . } (o)
int YourFunc(int num1=7, int num2=5, int num3=3) { . . . } (o)
'IT > C++' 카테고리의 다른 글
함수 오버로딩(Function Overloading) (0) | 2019.01.07 |
---|---|
C++에서의 입출력 (0) | 2019.01.03 |