티스토리 뷰

말그대로 가상임

Example 1

class AAA{

public:

virtual void fct(){

cout << "AAA" << endl;

}

};


class BBB:public AAA{

public:

void fct(){ // virtual

cout << "BBB" << endl;

}

};




int _tmain(int argc, _TCHAR* argv[])

{

BBB *b = new BBB;

AAA *a = b;


a->fct();

b->fct();

return 0;

}


출력결과는 

BBB

BBB



Example 2

class AAA{

public:

virtual void fct(){

cout << "AAA" << endl;

}

};


class BBB:public AAA{

public:

void fct(){ // virtual

cout << "BBB" << endl;

}

};


class CCC:public BBB{

public:

void fct(){

cout << "CCC" << endl;

}

};



int _tmain(int argc, _TCHAR* argv[])

{

CCC *c = new CCC;

BBB *b = c;

AAA *a = b;


a->fct();

b->fct();

c->fct();



return 0;

}


출력결과는

CCC

CCC

CCC

'프로그래밍(programming) > C++' 카테고리의 다른 글

순수 가상함수(pure virtual function)와 추상클래스  (0) 2013.10.16
virtual 키워드 2  (0) 2013.10.16
protected 멤버  (0) 2013.10.13
c++ class 상속  (0) 2013.10.13
explicit 과 mutable  (0) 2013.10.11
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함