승쨩개발공부
[C++] 객체 포인터 본문
객체 포인터
객체의 주소를 저장하는 포인터이다.
상곡 관계에서 부모의 객체 타입 포인터 변수에는 자식 객체의 주소 또한 저장할 수 있다.
-> 반대의 경우는 불가능하다.
단, 객체의 맴버에 접근할 떄는 객체 타입 기본으로 판단한다.
pPlayer의 실 객체는 CPlayer 이지만
객체 타입이 CObj이기 떄문에 CObj가 가지고 있는 함수만 호출이 가능하다.
하지만 객체 타입이 CPlayer 이면 자식 클래스이기 떄문에 부모 클래스에 있는 함수까지 호출이 가능하다.
-> 부모의 함수 또한 호출이 가능하다.
객체 타입을 자식 클래스로 하면 부모 클래스 동적 할당이 불가능하다.
자식 -> 부모는 참조가 가능
부모 -> 자식은 참조가 불가능
부모 클래스가 자식 클래스를 참조하는 방법으로는 다음에 설명할
가삼함수(Virtual)이 있다.
객체 포인터 정리
자식의 주소를 저장할 수 있는 포인터
멤버에 접근할 떄는 객체 타입 기준으로 판단한다.
'C++' 카테고리의 다른 글
[C++] 가상 함수(virtual), 가상 소멸자, 순수 가상 함수 (0) | 2021.12.03 |
---|---|
[C++] 오버라이딩 (0) | 2021.12.03 |
[C++] 상속 (0) | 2021.12.03 |
[C++] this포인터, extern, friend (0) | 2021.12.03 |
[C++] 복사 생성자(얕은복사, 깊은복사) (0) | 2021.12.03 |