[OOP] Polymorphism 다형성
Updated:
다형성 (Polymorphism)
- 부모 클래스에서 선언된
가상 함수(virtual functions)
가 자식 클래스에서 다른 기능으로오버라이드(Override)
되어 런타임에 부모나 형제들과 다른 기능을 보이는 현상
class Figure {
public:
virtual string draw() = 0;
};
class Triangle : public Figure {
public:
string draw() { return "Draw Triangle"; }
};
class Square : public Figure {
public:
string draw() { return "Draw Square"; }
};
int main() {
Figure* F1 = new Triangle;
Figure* F2 = new Square;
cout << F1->draw() << "\n";
cout << F2->draw() << "\n";
/*
출력 :
Draw Triangle
Draw Square
*/
return 0;
}
ref :
다형성의 기본 개념
C++ 프로그래밍, 다형성
상속과 다형성
Leave a comment