기본 인수
기본 매개변수 선언 기준
호출을 줄이는 장점보다 컴파일러가 어느 인자를 생략했는지 분명히 해석할 수 있는지가 먼저입니다.
declare once
rightmost only
avoid ambiguity
기본값은 한 곳에 둔다
헤더의 함수 원형에 기본값을 두고 정의부에는 반복하지 않는 형태가 안전합니다.
오른쪽부터 생략
중간 인자만 건너뛸 수 없으므로 기본값은 뒤쪽 매개변수부터 채웁니다.
오버로드 후보 확인
같은 호출이 두 함수에 모두 맞으면 컴파일러는 의도를 선택하지 못합니다.
01 · 원형
기본값 위치를 고정합니다.
02 · 정의
정의부 중복을 제거합니다.
03 · 호출
생략 인자를 오른쪽부터 읽습니다.
04 · 후보
오버로드 모호성을 확인합니다.
선택 인자가 많아지면 기본 매개변수보다 설정 객체나 명시적인 오버로드가 호출 의도를 더 잘 드러낼 수 있습니다.