#include using namespace std; class Base { public: virtual void f() { cout Base의 f()에 대한 모든 호출이 실행 시간 중에는 Derived의 f() 함수로 동적 바인딩. 가상함수(Virtual Function) virtual 키워드로 선언된 경우, 컴파일러에게 자신에 대한 호출 바인딩을 실행 시간까지 미루도록 지시 어느 클래스에서든 선언 가능함. 함수 오버라이딩(Function Overriding, 혹은 중복 ) 파생 클래스에서 기본 클래스의 가상 함수와 완전히 동일한 원형의 함수를 재정의 C++의 다형성 중 하나 기본 클래스의 포인터, 파생 클래스의 포인터를 이용하더라도 가상함수를 호출하면 파생 클래스에 오버라이딩된 함수가 항상 실행됨