C++ virtual 관련
글쓴이: asleea / 작성시간: 목, 2012/06/21 - 2:59오전
#include<iostream> using namespace std; class C { public: virtual string toString() { return "class C"; } }; class B : public C { public: string toString() { return "class B"; } }; void displayObject(C* c) { cout << c->toString().data() << endl; } int main() { B b; C c; displayObject(&b); displayObject(&c); return 0; }
virtual 함수 관련 공부하다가 궁굼한 부분이 생겨서 글을 오리게 되었습니다.
virtual이라는 키워드가 있을때와 없을때의 내부적으로 동적이 어떻게 다르길래 결과가 다른건가요 .?
그냥 제 지식으로는 virtual이라는 키워드가 없어도 원하는 각각의 오브젝트에 맞는 string이 출력되야 될꺼 같은데
책에는 동적결합 정적결합이라는 용어가 나와있던데 설명좀 부탁드립니다.ㅜㅜ
Forums:
댓글 달기