function overloading

같은 이름을 쓰고, 매개변수 목록으로 함수를 구분한다

오버로딩은 같은 작업 이름을 유지하면서 입력 형태에 따라 다른 구현을 고르게 하는 C++의 이름 해석 규칙입니다.

add(5, 7)add(3.5, 2.1)은 이름은 같지만 인자 타입이 다르므로 서로 다른 함수 후보로 연결됩니다.
정수 덧셈 int add(int a, int b)

정수 인자 두 개가 들어오면 이 후보가 가장 잘 맞습니다.

실수 덧셈 double add(double a, double b)

실수 인자 두 개는 double 버전으로 연결됩니다.

문자열 결합 string add(string a, string b)

같은 이름이라도 매개변수 타입이 달라 별도 후보가 됩니다.

같아도 되는 것함수 이름, 작업 계열, 호출 의도
달라야 하는 것매개변수 개수, 타입, 순서 중 하나 이상
핵심: 오버로딩의 구분 기준은 반환 타입이 아니라 호출문에 적힌 인자 목록입니다.