![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式之C++
文章平均质量分 67
设计模式小悟
FreeLikeTheWind.
书读百遍其义自见。
一个人必须不停地写作,才能不被茫茫人海湮灭。
展开
-
【c++之设计模式】组合使用:抽象工厂模式与单例模式
【c++之设计模式】组合使用:抽象工厂模式与单例模式原创 2023-11-07 23:05:55 · 1020 阅读 · 0 评论 -
【C++设计模式之访问者模式:行为型】分析及示例
访问者模式(Visitor Pattern)是一种行为型设计模式,它可以在不改变被访问对象的结构的前提下,定义作用于这些对象的新操作。访问者模式用于解耦对象结构和对象的操作。通过将操作分离到访问者对象中,对象结构可以保持稳定,而新增、修改操作可以通过新增、修改访问者对象来实现。原创 2023-10-10 23:30:00 · 67 阅读 · 0 评论 -
【C++设计模式之解释器模式:行为型】分析及示例
解释器模式(Interpreter Pattern)是一种行为型设计模式,它提供了一种解决问题的方法,通过定义语言的文法规则,解释并执行特定的语言表达式。解释器模式通过使用表达式和解释器,将文法规则中的句子逐个解释执行。它将一些复杂的业务逻辑分解为一系列的简单表达式,通过解析和执行这些表达式来实现业务逻辑的处理。原创 2023-10-09 23:00:00 · 466 阅读 · 0 评论 -
【C++设计模式之亨元模式:结构型】分析及示例
享元模式(Flyweight Pattern)是一种结构型设计模式,旨在通过共享对象,有效地支持大量细粒度的对象,从而减少内存和性能消耗。它通过将对象分为可共享的内部状态和不可共享的外部状态,从而实现对象共享。原创 2023-10-08 23:30:00 · 57 阅读 · 0 评论 -
【C++设计模式之责任链模式:行为型】分析及示例
责任链模式是一种行为型设计模式,它允许将请求沿着处理链传递,直到有一个处理器能够处理该请求。这种模式将请求的发送者和接收者解耦,同时提供了更高的灵活性和可扩展性。原创 2023-10-07 22:35:21 · 322 阅读 · 0 评论 -
【C++设计模式之命令模式:行为型】分析及示例
命令模式是一种行为型设计模式,它将请求封装成一个对象,从而使不同的请求可以被参数化、队列化或记录化。这种模式允许请求的发送者和接收者进行解耦,同时提供更高的灵活性和可扩展性。原创 2023-10-07 22:19:47 · 431 阅读 · 0 评论 -
【C++设计模式之迭代器模式】分析及示例
迭代器模式是一种行为型设计模式,它提供了一种顺序访问聚合对象元素的方法,而又不需要暴露聚合对象的内部结构。迭代器模式通过将遍历算法封装在迭代器对象中,可以使得遍历过程更简洁、灵活,并且符合开闭原则。原创 2023-10-07 21:40:28 · 436 阅读 · 0 评论 -
【C++设计模式之组合模式:结构型】分析及示例
> 组合模式是一种结构型设计模式,它能够将对象组合成树形结构以表示“整体-部分”的层次结构,并且能够使用相同的方式处理单个对象和组合对象。组合模式使得客户端可以一致地处理单个对象和组合对象,无需关心具体的对象类型。> > 组合模式将对象组织成树型结构,其中树的节点可以是单个对象或者组合对象。通过将对象以树形的方式组合,可以将单个对象和组合对象一视同仁。这种方式使得客户端无需区分单个对象和组合对象,可以递归地处理整个树结构,从而简化了客户端代码。原创 2023-10-07 20:37:54 · 881 阅读 · 0 评论 -
【C++设计模式之备忘录模式:行为型】分析及示例
备忘录模式(Memento Pattern)是一种行为型设计模式,它用于保存和恢复对象的状态。备忘录模式通过将对象的状态封装成一个备忘录(Memento),并将备忘录保存在一个管理者(Caretaker)中,来实现对对象状态的保存和恢复。备忘录模式的核心思想是将对象的状态封装成一个备忘录对象,而不是直接暴露状态给其他对象。这样,其他对象就无法直接操作对象的状态。同时,备忘录模式还提供了一个管理者对象,用于保存和管理备忘录,可以实现对对象状态的保存和恢复。原创 2023-10-06 22:37:20 · 363 阅读 · 0 评论 -
【C++设计模式之状态模式:行为型】分析及示例
状态模式(State Pattern)是一种行为型设计模式,它允许对象在内部状态改变时改变其行为,看起来就像是改变了其类。状态模式将对象的状态封装成不同的类,并使得对象在不同状态下有不同的行为。原创 2023-10-06 21:36:48 · 1295 阅读 · 0 评论 -
【C++设计模式之观察者模式:行为型】分析及示例
观察者模式(Observer Pattern)是一种行为型设计模式,它定义了一种一对多的依赖关系,使得当一个对象的状态发生变化时,所有依赖它的对象都能够自动收到通知并更新。原创 2023-10-06 19:27:37 · 328 阅读 · 0 评论 -
【C++设计模式之建造者模式:创建型】分析及示例
建造者模式通过将一个复杂对象的构建过程拆分成多个简单的部分,并由不同的建造者构建每个部分,最终组装成整的对象。这种方式可以灵活地构建不同的对象表示,同时封装了对象的构建过程。原创 2023-10-05 23:43:10 · 496 阅读 · 0 评论 -
【C++设计模式之原型模式:创建型】分析及示例
原型模式通过复制现有对象来创建新的对象,而无需显式地调用构造函数或暴露对象的创建细节。它使用原型接口来声明克隆方法,所有实现该接口的具类都可以通过复制身来创建新的对象。原创 2023-10-05 23:27:02 · 434 阅读 · 0 评论 -
【C++设计模式之代理模式:结构型】分析及示例
代理模式通过引入一个代理对象来控制对真实对象的访问。代理对象和真实对象实现相同的接口,使得客户端可以透明地使用代理对象,无需知道真实对象的存在。原创 2023-10-08 23:30:00 · 62 阅读 · 0 评论 -
【C++设计模式之装饰模式:结构型】分析及示例
装饰模式通过创建一个包装器(Wrapper)来包裹原始对象,并在原始对象的行为前后添加额外的功能。通过这种方式,可以实现在不改变原始对象结构的情况下,动态地给对象添加新的功能。原创 2023-10-05 22:36:36 · 336 阅读 · 0 评论 -
【C++设计模式之策略模式】分析及示例
策略模式(Strategy Pattern)是一种行为型设计模式,它允许在运行时根据不同的情况选择算法的行为。该模式将算法的定义封装成一组易于切换和替换的类,使得算法可以独立于其使用者进行变化。原创 2023-10-05 21:53:50 · 316 阅读 · 0 评论 -
【C++设计模式之外观模式】分析及示例
外观模式(Facade Pattern)是一种结构型设计模式。它提供了一个简化接口,使得客户端能够更方便地访问子系统中的一组接口。外观模式定义了一个高层接口,这个接口可以包含子系统中多个接口的功能,从而简化了客户端的使用。原创 2023-10-04 22:45:01 · 352 阅读 · 0 评论 -
【C++设计模式之抽象工厂模式】分析及示例
抽象工厂模式(Abstract Factory Pattern)是一种创建型设计模式,它提供了一种创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。它属于工厂模式的一种,与工厂方法模式相比,抽象工厂模式提供了一种创建一系列相关或相互依赖对象的接口,而工厂方法模式只能创建单一产品。在抽象工厂模式中,有一个抽象工厂类,它定义了一组用于创建一系列产品的接口。原创 2023-10-07 23:30:00 · 79 阅读 · 0 评论 -
【C++设计模式之工厂方法模式】分析及示例
工厂方法模式(Factory Method Pattern)是一种常用的对象创建型设计模式,它的作用是定义一个用于创建对象的接口,让子类决定实例化哪个类。工厂方法模式使一个类的实例化延迟到其子类。原创 2023-10-06 23:30:00 · 119 阅读 · 0 评论 -
【C++设计模式之简单工厂模式】分析及示例
简单工厂模式是一种常见的设计模式,用于创建多种相似对象的实例,属于创建型。它通过一个工厂类来解耦客户端代码和对象的创建过程,使得客户端无需直接和具体的产品类交互,而只需要通过工厂类获取所需的产品实例即可。原创 2023-10-04 22:12:47 · 565 阅读 · 0 评论 -
【C++设计模式之适配器模式】分析及示例
在示例中,Adaptee是需要被适配的类,Target是目标接口,Adapter是适配器类。其中,目标接口是客户端所期望的接口,适配器是实现目标接口,同时又包装了被适配者的对象,被适配者是需要被适配的已有的类。适配器模式是一种结构型设计模式,定义了将一个类的接口转换成客户希望的另外一个接口,使得原本不兼容的接口可以一起工作。适配器模式通过将一个已有的类的接口转换成客户端所期望的接口,使得原本不兼容的接口可以协同工作。类适配器是通过类的继承来实现,对象适配器是通过对象的组合来实现。原创 2023-10-05 23:30:00 · 87 阅读 · 0 评论 -
【C++设计模式之模板模式】分析及示例
模板模式(Template Pattern)是设计模式中的一种行为型模式。该模式定义一个操作中的算法骨架,而将具体的算法实现延迟到子类中。模板模式使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。原创 2023-10-04 21:04:19 · 405 阅读 · 1 评论 -
【c++设计模式之中介者模式】分析及示例
中介者模式属于行为型设计模式,旨在减少对象之间的耦合关系,通过引入一个中介者对象,将对象间复杂的交互转化为中介者与对象之间的简单交互,中介者模式实现了集中式控制,有助于系统的维护和扩展。原创 2023-10-04 00:15:00 · 361 阅读 · 0 评论 -
【c++设计模式之桥接模式】分析及示例
桥接模式是一种结构型设计模式,其目的是将抽象部分和实现部分分离开来,使得它们可以独立地变化。在桥接模式中,将抽象部分定义为一个接口(也可以是抽象类),实现部分也定义为一个接口,并且在抽象部分中包含一个实现部分的引用。这样,抽象部分和实现部分就可以分别变化,而不会相互影响。桥接模式可以用来处理多层继承结构,将类的功能层次结构与类的实现层次结构分离出来,从而使它们可以独立地扩展。原创 2023-10-03 23:30:00 · 121 阅读 · 0 评论 -
【C++】管理者类的实现
c++之管理者类实现原创 2023-10-01 23:30:00 · 357 阅读 · 0 评论 -
【C++】适配器模式
适配器模式是一种结构型设计模式,它允许不兼容的接口之间进行通信。适配器模式将一个类的接口转换为另一个接口,使得原本由于接口不兼容而无法工作的类能够协同工作。原创 2023-09-28 23:30:00 · 116 阅读 · 0 评论 -
c++中介者模式
中介者模式是一种行为型设计模式,它允许对象之间通过中介者对象进行通信,而不是直接相互引用。这样可以降低对象之间的耦合度,使得对象之间的交互更加灵活。中介者模式的核心思想是将对象之间的交互行为集中到中介者对象中,由中介者对象来协调对象之间的交互。这样可以避免对象之间的直接交互,从而降低对象之间的耦合度,使得系统更加灵活、可扩展。原创 2023-06-04 23:27:22 · 77 阅读 · 0 评论 -
单例模式之C++(Qt、六种实现方式)实现
单例模式,是一种常用的软件设计模式。它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中,应用该模式的类一个类只有一个实例。即一个类只有一个对象实例。原创 2023-04-09 17:26:30 · 1216 阅读 · 0 评论