C++

C++/개인 공부

가상 함수와 오버라이딩

가상 함수와 오버라이딩 오버라이딩이란 파생 클래스에서 기본 클래스에 작성된 가상함수를 재작성하여, 기본 클래스의 가상 함수를 무력화 시키는 것이다. 기본 클래스 포인터를 사용하든, 파생 클래스 포인터를 사용하든 파생 클래스에 오버라이딩된 함수가 항상 실행된다. 오버라이딩시에 virtual 키워드를 사용하는데, 이는 자신의 호출바인딩을 실행시간까지 미루도록 지시한다. 함수 재정의와 다르다! 함수 재정의는 컴파일 시간 다형성을 실현하고, 오버라이딩은 실행 시간 다형성을 실현한다. 오버라이딩 사례 #include using namespace std; class Base { public: virtual void f() { cout

Jminu
'C++' 카테고리의 글 목록