![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++常用设计模式
LMW1150999580
这个作者很懒,什么都没留下…
展开
-
单例模式
单例模式的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中一个类只有一个实例,即一个类只有一个实例。TEXT 1:使用懒加载,只有在使用时才实例化。class Singleton{public: static Singleton *Instance();private: Singleton() { cout <&l...原创 2019-07-20 01:35:57 · 84 阅读 · 0 评论 -
简单工厂模式
#include <iostream>#include <exception>using namespace std;class Operation//运算类{public: Operation() { cout << "this is Operation()" << endl; } virtual ~Operation()...原创 2019-07-21 16:24:01 · 165 阅读 · 0 评论 -
工厂方法模式
简单工厂模式的最大优点在于工厂类中包含了必要的逻辑判断,根据客户端的选择条件动态实例化相关的类,对于客户端来说,去除了与具体产品的依赖。工厂方法模式实现时,客户端需要决定实例化哪一个工厂来实现运算类,选择判断的问题还是存在的,也就是说,工厂方法把简单工厂的内部逻辑判断移到了客户端代码进行。由于使用了多态性,工厂方法模式保持了简单工厂模式的优点,而且克服了它的缺点。但缺点是由于每加一个产品需要加...原创 2019-07-21 20:11:12 · 134 阅读 · 0 评论 -
抽象工厂模式
抽象工厂模式,提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。优点:①易于交换产品系列,由于具体工厂类,例如AbstractFactory *paf = new Factory_2,在一个应用中只需要在初始化时候出现一次,这就使得改变一个具体的工厂变得非常容易,它只需要改变具体工厂即可使用不同的产品配置。 ②它让具体的创建实例过程与客户端分离,客户...原创 2019-07-22 11:41:44 · 148 阅读 · 0 评论 -
观察者模式
观察者模式又叫做发布-订阅(Publish/Subscribe)模式。 观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己。#include <iostream>#include <string>#include <map>#i...原创 2019-08-05 11:18:52 · 151 阅读 · 0 评论 -
适配器模式
一,什么是适配器模式适配器模式(adapter),将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本接口用不兼容而不能一起工作的那些类可以一起工作。二,何时使用适配器模式两个类所做的事情相同或相似,但是具有不同的接口时要使用它。使得客户端可以统一调用同一接口。接口不同时,首先不应该考虑适配器,而是应该考虑通过重构统一接口。除非是双方都不太容易修改的时候在使用适配器模...原创 2019-08-08 11:44:46 · 110 阅读 · 0 评论