Какова цель этого шаблона? Как это называется? Это выглядело очень странно, когда я увидел это в первый раз, хотя я видел это много раз.Что такое производный класс в качестве параметра шаблона?
template<typename Derived>
struct Base {
//...
};
struct Example : Base<Example> {
//...
};
@Thomson Tan: обратите внимание на @ точку GMan о статическом полиморфизме. Это важный момент. Он обеспечивает имитацию вызовов виртуальных функций из базового класса без накладных расходов на виртуальные функции (если это важно) – Chubsdad