C++ 고급 문법 (25) — RTTI 직접 구현(Implementing RTTI)

지난 글에서 dynamic_cast는 상속 그래프를 탐색하느라 typeid 비교보다 10배 넘게 느렸고, -fno-rtti로 빌드하면 아예 쓸 수 없었다. 그래서 LLVM/Clang처럼 타입 판정이 잦고 -fno-rtti로 빌드하는 프로젝트는 RTTI를 직접 구현한다. 각 객체에…

Continue ReadingC++ 고급 문법 (25) — RTTI 직접 구현(Implementing RTTI)

C++ 고급 문법 (24) — RTTI(Run-Time Type Information)

기반 클래스 포인터만 들고 있는데 실제 객체가 어떤 타입인지 알아야 할 때가 있다. 이벤트 큐에서 꺼낸 객체를 타입별 핸들러로 보내거나, 특정 파생 타입에만 있는 기능을 쓰는 경우다. C++은 실행 시점…

Continue ReadingC++ 고급 문법 (24) — RTTI(Run-Time Type Information)