https://codingnote.cc/zh-cn/p/260440/
C++ 设计模式--模板模式、策略模式、观察者模式