ITGenerations
[c++] 오버로딩과 오버라이딩 비교 본문
비교요소 |
오버로딩 |
오버라이딩 |
정의 |
매개 변수 타입이나 개수가 다르지만, 이름이 같은 함수들이 중복 작성되는 것 |
기본 클래스에 선언된 가상 함수를 파생 클래스에서 이름, 매개 변수 개수, 리턴 타입까지 완벽히 같은 원형으로 재작성하는 것 |
존재 |
외부 함수들 사이. 한 클래스의 멤버들. 상속관계 |
상속관계. 가상 함수에서만 적용 |
목적 |
이름이 같은 여러 개의 함수를 중복 작성하여 사용의 편의성 향상 |
기본 클래스에 구현된 가상 함수를 무시하고 파생 클래스에서 새로운 기능으로 재정의하고자 함 |
바인딩 |
정적 바인딩, 컴파일 시에 중복된 함수들의 호출 구분 |
동적 바인딩. 실행 시간에 오버라이딩 된 함수를 찾아 실행 |
관련 객체 지향 특성 |
다형성 |
다형성 |
출처: 명품c++ 프로그래밍 황기태지음 p434 표9-1
'프로그래밍 > c++ 명품프로그래밍 ' 카테고리의 다른 글
[c++] 추상클래스, 순수가상함수 (0) | 2018.01.03 |
---|---|
[c++]명품프로그래밍 솔루션 (7) | 2018.01.03 |
[c++]오버로딩 오버라이딩 차이점 (0) | 2017.12.28 |
p147. n8. 다수의 클래스를 선언하고 활용하는 간단한 문제이다. (0) | 2017.12.02 |
[c++]p.146 n.7 Oval 클래스는 주어진 사각형에 내접하는 타원을 추상화한 클래스이다. (0) | 2017.12.01 |