class First

{

// 생략

};


class Second : public First

{

// 생략

};


class Third : public Second

{

// 생략

};


int main(void)

{

Third * tptr = new Third();

Second * sptr = tptr;

First * fptr = sptr;



대충 이렇게 있을 때


sptr 이 tptr을 참조하는거랑

fptr 이 sptr을 참조하는게 이해가 안됨.


tptr에는 Second에 없는 멤버가 있을 수도 있는데

어떻게 Second의 포인터 변수가 tptr을 참조하지?