CRTP를 쓰는 이유가 virtual table의 overhead 줄이려고 쓰는거잖슴. 그런데 CRTP를 사용하는 클래스를 컨테이너에 담으려고 추상클래스를 CRTP base 클래스에 상속받는 코드를 봤음. 이럴거면 CRTP 왜 쓰는거임?


왜 저런 코드를 짜나 생각해봤는데 도무지 모르겠음. 컨테이너같은데 담으려고 abstract class를 상속받으면 abstract class의 포인터로 들고있을거고, 인터페이스 맴버 함수 또한 virtual이라서 virtual table 참조하게 되는건 runtime polymorphism이랑 똑같을텐데... 혹시 다른 이유가 있음?