이 자료는 http://glotalk.egloos.com/2018168 에서 퍼옴을 밝힙니다.
#include "stdafx.h" struct A1 { virtual ~A1() { printf("A1 dtor\n"); } }; struct A2 : A1 { virtual ~A2() { printf("A2 dtor\n"); } }; struct A3 : A2 { virtual ~A3() { printf("A3 dtor\n"); } }; struct B1 { ~B1() { printf("B1 dtor\n"); } }; struct B2 : B1 { ~B2() { printf("B2 dtor\n"); } }; struct B3 : B2 { ~B3() { printf("B3 dtor\n"); } }; int _tmain(int argc, _TCHAR* argv[]) { A1 * a = new A3; delete a; printf("\n");
A3 * a2 = new A3; delete a2; printf("\n");
B1 * b = new B3; delete b; printf("\n");
B3 * b2 = new B3; delete b2; printf("\n");
return 0; } |
출력은
A3 dtor A2 dtor A1 dtor
A3 dtor A2 dtor A1 dtor
B1 dtor
B3 dtor B2 dtor B1 dtor
|
댓글 없음:
댓글 쓰기