C++总复习--8--C++程序设计--设计模式

  C++总复习--8--C++程序设计--设计模式

1.设计模式-观察者模式

2.设计模式-工厂模式,抽象工厂模式

3.设计模式-单例模式(考虑线程安全)


 

1.单例模式***

        

类只能实例化一个对象

1.屏蔽生成对象的接口

2.类中提供一个接口生成唯一对象

  1. 返回值不能是类类型 (可以是类类型的指针)
  2. 静态的

线程不安全

双重锁机制

贪婪加载

 

2.迭代器模式

   Begin()   end()   next(++实现)    curitem(解引用实现)

 

3.工厂模式

 

生成对象

  1. 不用考虑对象的生成过程
  2. 可以通过标记简化针对名称的记忆

1.简单工厂模式   违背开放-封闭原则(规模小  规格不容易发生变化)

开放原则:旧版本的代码可以被新版本使用,可以在旧版本上做延用,扩展

封闭原则:可以在旧版本上做扩展,但是不能修改旧版本代码

2.厂方法模式  (规模较大  容易发生变化)

3.抽象工厂模式   (产品有多个部件构成,先完成小部件,然后构成产品)

4.观察者模式

1.观察者

     观察事件的到来并通知感兴趣的监听者处理事件

2.监听者

     处理事件

 

观察者

  1. 一张注册表

         事件编号    感兴趣的监听者  map  multimap

观察者接口

  1. 注册   register
  2. 通知    noty

监听者接口

   1.处理事件    handle

猜你喜欢

转载自blog.csdn.net/qq_41103495/article/details/107976038