使用C++实现的设计模式