디폴트(Default) 매개변수

디폴트(Default) 매개변수

main

디폴트(Default) 매개변수

  • C언어 에서는 변수 선언이나 초기 값을 함수의 맨 앞 부분에 선언해야 한다.

  • C++은 함수의 다른 위치에서 변수 선언이 가능하고 함수의 매개변수에 디폴트(Default) 값을 바로 선언할 수도 있다.

  • C++ 에서 함수 예제

int function(int value = 0) {...}
  • 좀 더 응용하면 다음과 같이 사용 할 수 있다.
// 함수 선언
int function(int a=0, int b=0, int c=0);

int main()
{
    function(1,1,1);
}

// 함수 정의
int function(int a, int b, int c)
{
    return a+b+c;
}
  • 함수 선언 시에 매개변수의 디폴트 값을 미리 선언하고 이후 함수 정의에서는 따로 디폴트 값을 선언하지 않아도 된다.

  • 매개변수를 디폴트로 선언하더라도 함수 오버로딩과 같이 사용하면 예외 상황이 발생할 수 있다.

int function(int a=0){...}
int function(void){...}

int main()
{
    function();
    return 0;
}
  • 이전에 했던 함수 오버로딩 문제와 같은 문제인데 main 함수 내에서 function을 사용함에 있어 컴파일러가 void인지 디폴트 값 0인지를 알 수 없기 때문에 에러를 발생 시킨다.

도움이 되셨다면 더 좋은 정보 공유를 위해 광고 클릭 부탁 드립니다 :)

댓글 쓰기

0 댓글