이런 상황 꽤 자주 있는데 기본 클래스가 있고 실제론 그걸 상속한 템플릿 클래스를 사용함.

그런 경우에 내가 아는 한 네이밍 보통 이 두가지를 많이 쓰는데

// 1안 class First {}; template<typename asdf> class FirstImpl : First {}; // 혹은 First_impl 등등 std::vector<std::unique_ptr<First>> firsts; // 2안 class SecondBase {}; // 혹은 Second_base 등등 template<typename asdf> class Second : SecondBase {}; std::vector<std::unique_ptr<SecondBase>> seconds;


뭐를 더 선호함?