더북(TheBook)

1.5.1.3 기본값

인수가 일반적으로 같은 값을 갖는다면 우리는 이 값을 기본값으로 선언할 수 있다. n-제곱근을 계산하는 함수를 구현하고 싶은데 대부분 제곱근을 계산한다고 가정하면 다음과 같이 작성할 수 있다.

double root(double x, int degree = 2) { ... }

이 함수는 하나 또는 두 개의 인수로 호출할 수 있다.

x = root(3.5, 3);
y = root(7.0);    // root(7.0, 2)와 같다.

단, 인수 목록의 끝에서만 여러 개의 기본값을 선언할 수 있다. 다시 말해서, 기본값을 갖는 인수 뒤에는 기본값이 없는 인수를 가질 수 없다.

기본값은 매개변수를 추가할 때도 유용하다. 원을 그리는 함수가 있다고 가정하자.

draw_circle(int x, int y, float radius);

이 원들은 전부 검은색이다. 이후, 색상을 추가하게 되었다.

draw_circle(int x, int y, float radius, color c = black);

기본 인수로 인해 인수가 3개인 draw_circle 함수의 호출이 여전히 동작하므로, 애플리케이션을 리팩터링할 필요가 없다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.