在这个例子中,为什么我需要 CRTP?

In this example why do I need CRTP?

参见对象计数器示例here:为什么它只是不从非模板继承class counter。为什么计数器应该是模板?

template <typename T>
struct counter

专业化将为您提供针对不同类型的不同 counter
请注意,这些计数器是静态数据成员,因此在给定专业化的所有实例之间共享。