본문 바로가기

예전/C, C++

[C++] upcasting



부모 포인터 pA에 자식 객체 Dog의 주소를 담을 수 있다.

일반함수 foo는 Animal의 포인터를 받아 cry()를 출력하는 함수이다.


foo에 자식 객체 d가 들어가서 제대로 cry가 출력되는 것을 알 수 있다.


이렇게 부모 포인터에 자식 객체의 주소를 담는 것을 upcating이라고 한다.

upcasting은 public 상속일 때만 된다. private 상속이면 Dog의 객체에서 Cry를 부를 수 없기 때문이다.



'예전 > C, C++' 카테고리의 다른 글

visual studio warning 무시 하는 방법  (0) 2014.05.20
[C++] binding  (0) 2014.01.28
[C++] 일반 함수 포인터, 멤버 함수 포인터  (0) 2014.01.28
[C++] static 멤버 변수, 함수  (0) 2014.01.28
[C] memmove와 memcopy  (0) 2013.08.24