1. RTTI의 개념 C++에서 RTTI(Run-time type information)는 런타임에 개체의 데이터 유형에 대한 정보를 노출하는 메커니즘으로, 하나 이상의 가상 기능을 가진 클래스에만 사용할 수 있다. 이를 통해 프로그램 실행 중에 객체의 유형을 결정할 수 있다. '런타임 캐스트' 라는 개념이 있는데, 이것은 캐스트가 유효한지 검사하는 것이다. 포인터나 참조를 사용하여 객체의 런타임 유형을 확인하는 가장 간단한 접근 방식이라 할 수 있다. 이는 기본 클래스에서 파생된 유형으로 포인터를 캐스팅해야 할 때 특히 유용하다. 클래스의 상속 계층 구조를 다룰 때 일반적으로 객체의 캐스팅이 필요하다. 이런 캐스트에는 두 가지 유형이 존재한다. ① 업캐스팅: 파생된 클래스 객체의 포인터 또는 참조를 기..