파생 클래스에서 구현한 기능이 적용되려면 부모 클래스에서는 virtual 키워드를 사용하여 가상함수로 만들어 주어야합니다.
그러면 기본적으로 자식 객체의 함수가 호출됩니다.
만일 부모객체의 함수 호출이 필요하다면 명시적으로 부모를 지정하고 호출합니다.
ParentClass::Func(...);
장경선 님이 쓰신 글 :
: 상속에서 기본 클래스의 생성자가 먼저 실행되고 파생 클래스의 생성자가 실행됩니다.
: 소멸자는 역순으로 실행되고요.
:
: 그런데 문의 드릴 사항은 기본 클래스와 파생 클래스 모두에 같은 기능의 연산자 함수가
: 있을 시 main()에서 파생 클래스 객체로 호출하면 어떤 연산자 함수가 호출되느냐 입니다.
:
: 기본 클래스의 연산자 함수가 호출되는가, 또는 파생 클래스의 연산자 함수가 호출되는가...
:
: 프로그램 실행 결과는 오류가 발생하지 않고 정상 컴파일, 실행 됩니다.
: 허나 제가 이해하기에는 어렵네요.
:
: source file을 올려드리니 답변 부탁드립니다.
|