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

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

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

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


 

1.单例模式***

        

类只能实例化一个对象

1.屏蔽生成对象的接口

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

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

线程不安全

双重锁机制

贪婪加载

 

2.迭代器模式

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

 

3.工厂模式

 

生成对象

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

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

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

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

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

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

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

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

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

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

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

4.观察者模式

1.观察者

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

2.监听者

     处理事件

 

观察者

  1. 一张注册表

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

观察者接口

  1. 注册   register
  2. 通知    noty

监听者接口

   1.处理事件    handle

相关文章:

  • 2021-08-26
  • 2021-11-19
  • 2022-03-07
猜你喜欢
  • 2021-08-31
  • 2022-12-23
  • 2021-12-06
  • 2021-10-18
  • 2022-12-23
相关资源
相似解决方案