부모 클래스에서 정의된 함수를 자식 클래스에서 함수명, 매개변수의 자료형, 매개변수의 개수를 유지한 채로 다시 정의할 수 있다. 이를 함수 오버라이딩이라고 하며, 함수 오버라이딩이 행해진 경우, 자식 객체에서 해당 함수명으로 함수를 호출하면 부모 클래스에서 정의된 함수가 아닌, 자식 클래스에서 재정의된 함수가 호출된다 ( 이를 함수를 ‘가린다’라고 표현한다. )

만일 함수 오버라이딩되었음에도 부모의 함수를 호출하고 싶다면 다음의 형식으로 호출할 수 있다.

 
/*자식 클래스의 클래스 내부에서 호출하는 경우*/
//부모 클래스의 클래스명::함수명();
PermanentWorker::GetPay();
 
/*객체를 통하여 호출하는 경우*/
//자식 클래스의 객체명.부모 클래스의 클래스명::함수명();
seller.PermanentWorker::ShowSalaryInfo();
 

참고자료

윤성우의_열혈_cpp_프로그래밍