넓은 의미의 다형성 1. 함수 중복(overloading)

Jin Hur·2021년 12월 8일
0

OOP with C++ 

목록 보기
17/30

reference:
"명품 C++ Programming" / 황기태
"전문가를 위한 C++" / 마크 그레고리

함수 오버로딩 조건

  • 중복된 함수들의 이름이 동일
  • 중복된 함수들은 매개변수 타입이나 갯수가 달라야 한다.
  • 함수 중복에 리턴 타입은 고려되지 않는다.

함수 오버로딩을 하는 이유

(함수 오버로딩의 편리함)

하나의 이름을 가지고 입력되는 인자들의 타입, 갯수의 차이로 같은 동작을 나타낼 수 있다.
예를 들어 굳이 정수형 덧셈, 실수형 덧셈 함수를 만들지 않고, add라는 동일한 이름의 함수를 선언하되 함수를 호출하는 쪽에서는 인자의 종류에 따라 함수를 구분하여 호출하는 것 없이 하나의 함수만을 호출할 수 있는 편리함을 준다.


추가로 함수 오버로딩 과정에서는 다음과 같은 부분들을 조심해야 한다.

  1. 형 변환으로 인한 모호성
  2. 참조 매개변수로 인한 모호성
  3. 디폴트 매개변수로 인한 모호성

0개의 댓글