Любопытно повторяющийся шаблон шаблона (CRTP) - это идиома C++, в которой класс X является производным от экземпляра шаблона класса с использованием самого X в качестве аргумента шаблона.

Любопытно повторяющийся шаблонный шаблон (CRTP) - это идиома C++, в которой класс X происходит от создания экземпляра шаблона класса с использованием X как аргумент шаблона.

Название этой идиомы было придумано Джимом Коплиеном, который наблюдал ее в одном из самых ранних кодов шаблонов C++.

Типичные варианты использования включают статический полиморфизм и построение полиморфной копии (клонирование).

Википедия.