这篇博客详细介绍了原型模式(Prototype Pattern)的概念及其在 C++ 中的实现。原型模式通过克隆现有对象来创建新对象,从而提高性能和代码复用性。文章首先介绍了原型模式的基本原理,并通过一个游戏地图的示例展示了如何使用原型模式创建和管理实体对象。具体实现包括定义抽象类 Entity 及其子类 Enemy 和 Chest,并在地图类 Map 中存储和克隆这些实体对象。最后,文章总结了原型模式的优点,特别是在需要频繁创建对象的场景中,其高效性和灵活性。
这篇笔记详细介绍了单例模式的概念及其在项目中的应用。单例模式确保一个类在全局范围内只有一个实例,并通过这个唯一实例向其他模块提供数据访问。文章通过 C++ 代码示例展示了如何实现单例模式,包括饿汉模式和懒汉模式,并讨论了懒汉模式下的线程安全问题。最后,文章通过模拟宝可梦探险队中的任务板,展示了单例模式在实际场景中的应用。总结部分列出了单例模式的优点和缺点。
这篇笔记详细介绍了工厂模式及其在 C++ 中的实现。文章首先介绍了创建方法,展示了如何通过静态方法封装对象的创建细节。接着,文章讨论了简单工厂模式,通过条件语句创建不同类型的对象,但指出其违反了开闭原则。随后,文章介绍了工厂方法模式,通过不同的工厂类创建不同类型的产品,解决了简单工厂模式的问题。最后,文章讲解了抽象工厂模式,展示了如何创建多个系列的产品,并通过工厂管理对象进行管理。每个部分都配有详细的代码示例和图示,帮助读者理解工厂模式的应用。