본문 바로가기
코딩/C++

가상 함수

by rosemarie 2022. 10. 18.
반응형

가상함수: 베이스 클래스 내에서 정의된 멤버 함수를 파생 클래스에서 재정의 (오버라이딩) 하고자 할 때 사용

파생 클래스에서 오버라이딩되는 가상 함수는 베이스 클래스와 함수의 반환형, 매개변수의 개수, 형이 같아야 한다.

 

가상함수 정의: 상위 클래스의 멤버 함수 앞에 virtual을 붙임

가상함수의 특성은 상속된다,

 

순수가상함수: 베이스 클래스에서 어떤 동작도 정의되지 않고 함수의 선언만을 하는 가상 함수

 

virtual 반환형 함수명(매개변수 리스트) = 0;

 

추상 클래스: 순수 가상 함수를 한 개 이상 포함한 클래스, 완전한 클래스가 아니므로 객체를 생성하지 못한다. 다른 클래스의 베이스 클래스로서의 역할