![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式(C++实现)
文章平均质量分 80
shigm0912
这个作者很懒,什么都没留下…
展开
-
设计模式 - SingleToned单例模式
1. 简单描述 单例模式保证了一个类(在同一进程中)只有一个实例。 单例模式有多种形式:懒汉(又分为线程安全,线程不安全)在第一次使用时创建实例;饿汉(线程安全)在第一次使用前就创建了实例;双重检测则类似线程安全的懒汉模式,在加锁前多加一次指针判空提高效率。 2.实例程序(双重检测) #include #include "AutoLock.h" using namespace s原创 2017-02-11 17:52:37 · 187 阅读 · 0 评论 -
设计模式 - Observer观察者模式
1. 简单描述 观察者模式主要包括:Subject与Observers。通常observer会有多个而subject只有一个。observer将自己注册到subject中,当subject中的信息发生变化时subject便会通知该observer进行更新。subject保存所有注册的observer实例信息,在信息发生变化时通知其保存的每一个observer。这种方式是回调的一种应用。obser原创 2017-02-11 18:12:51 · 251 阅读 · 0 评论 -
设计模式 - Factory工厂模式
1.简单描述 工厂模式用来创建具体类的对象。普通的工厂模式分为两个部分:一是具体的产品类,他们都继承自一个最初的抽象类;二是工厂,工厂也可以分为不同类型,也都继承于同一个接口工厂。不同类型的工场可以生产不同大类的产品,同一个类型的工厂中可以生产同一大类不同小类的产品(相当于两级的架构),工厂会输出最终的产品。 2.类图 。。。。。。。。。。。。待补 3.实例程序 3.1原创 2017-02-14 23:13:46 · 208 阅读 · 0 评论 -
设计模式 - AbstractFactory抽象工厂
1.简单描述 抽象工厂包含两部分:一是继承自同一个抽象类的产品类族;二是不同类型的抽象工厂。抽象工厂中可以创建该类产品所需要的元素(创建产品类的数据成员),而生产的所有元素便是抽象工厂的产物。由于抽象工厂可以生成许多元素,所以我们又可以认为,抽象工厂是封装了多个工厂方法,对于每一个元素就相当于一个工厂方法。到底是哪一种类型的元素则由具体的工厂类型决定(子类决定)。产品不再作为抽象工厂的直接输出产原创 2017-02-14 23:39:33 · 203 阅读 · 0 评论