- Is-a 관계 => 상속관계
- Has-a 관계 => 포함관계(객체멤버로 포함)
재정의 / 중복정의
재정의 : Overriding
중복정의 : Overloading
부모클래스 > 자식클래스
자식객체를 부모클래스에 대입 : upcasting, 가능
특징
- 물려받은 것만 대입이 가능
- 업캐스팅 한것은 다운 캐스팅도 가능
Ex)
Shape *ps = new Rectangle();
Shape ps2 = new Shape();
ps->setOrigin(10, 10);
ps->draw();
((Rectangle *) ps) ->setWidth(100); <- 가능
(Rectangle *) ps2.setWidth(100); <- 불가능
delete ps;
부모객체를 자식클래스에 대입 : downcasting, 불가능
다형성을 형성 하기 위해서는 밑에것이 필요한다.
(상속관계)
1, 멤버함수 재정의
2. 가상함수
3. 업캐스팅 => 재정의된 멤버함수
'C++' 카테고리의 다른 글
[C++] 순수 가상 함수와 추상클래스 그리고 업캐스팅 (0) | 2010.10.04 |
---|---|
다형성 (Polymorphism) (0) | 2010.09.30 |
[C++]생성자와 소멸자 (0) | 2010.09.10 |
클래스의 구성 (0) | 2010.09.02 |
string 클래스 (0) | 2010.08.30 |