로딩
요청 처리 중입니다...

7 C++의 다형성(Polymorphism)

 7 C++의 다형성(Polymorphism)

가상함수의 기본(Basic of Virtual Functions) 다형성(Polymorphism) 하나의 함수에 다양한 의미를 연결 짓는 것을 의미합니다. 이는 객체지향 프로그래밍의 근본이 되는 원리입니다.

가상 함수는 다형성을 제공하는 방법입니다. 가상함수(Virtual Function) 가상이라는 말은 실제로는 존재하지 않지만, 본질적으로는 존재한다는 의미입니다.

즉, 가상함수는 정의되기도 전에 사용될 수 있는 함수를 의미합니다. 예를 들면, 도형이라는 클래스가 있다고 합시다.

그리고 여기서 파생된 원이라는 객체와 사각형이라는 객체가 있다고 합니다. 도형을 그린다는 개념은 매우 추상적이고 표현하기 어렵습니다.

하지만, 여기서 파생된 원이나 사각형에서 그린다라는 개념은 머릿속으로 바로 떠올릴 수 있을 정도로 직관적이게 됩니다. 하지만 서로의 그린다는 개념은 완전히 다른 결과를 야기합니다. class Figure{ void draw(); }; 핵심은 바로 도형 객체에서의 그린다는 개...

# cpp # downcasting # upcasting # 가상함수 # 다형성