노력과 삽질 퇴적물
가상함수 & 추상클래스 본문
=> virtual키워드(예약어)를 함수선언시 맨앞에 붙인다.
=> 추상클래스: 클래스 선언부에 순수가상함수가 1개 이상 있는 클래스. 객체생성 불가.
=> 동적바인딩
=> OOP: 다형성과 OOP: 상속(or 계승)을 이용한 기법이라고 할수 있다.
추상클래스를 상속받은 자식클래스는 반드시 순수가상함수부분을 재정의 해야하니깐.
=> 추상클래스: 클래스 선언부에 순수가상함수가 1개 이상 있는 클래스. 객체생성 불가.
=> 동적바인딩
class parrentClass
{
public:
virtual 반환타입 함수1(...인수...); //가상함수
virtual 반환타입 함수2(...인수...) = 0; //순수가상함수. 해당클래스를 자동으로 추상클래스
...;
};
class childClass1 : 액세스_지정자 parrentClass //<-상속
{
public:
반환타입 함수2(...인수...);
...;
};
void childClass1 :: 함수2(...인수...)
{
//순수가상함수의 재정의. //<-다형성
}
class childClass2 : 액세스_지정자 parrentClass //<-상속
{
public:
반환타입 함수2(...인수...);
...;
};
void childClass2 :: 함수2(...인수...)
{
//순수가상함수의 재정의. //<-다형성
}
=> OOP: 다형성과 OOP: 상속(or 계승)을 이용한 기법이라고 할수 있다.
추상클래스를 상속받은 자식클래스는 반드시 순수가상함수부분을 재정의 해야하니깐.
'📂기초 및 세팅 note > 언어. C&C++ 계열' 카테고리의 다른 글
CPP: 파일처리 (0) | 2011.08.02 |
---|---|
CPP: 함수관련 편리한(?) 예약어 (0) | 2011.08.02 |
OOP: 상속(or 계승) (0) | 2011.07.25 |
생성자 & 소멸자 (0) | 2011.07.25 |
OOP: 다형성 (2) | 2011.07.23 |