C++实现|策略模式|工厂模式|单例模式|观察者模式|桥接模式

目录

关于工厂模式:

关于策略模式:

单例模式

观察者模式

桥接模式:


        C++实现|策略模式|工厂模式|单例模式|观察者模式|桥接模式

关于工厂模式:

在工厂模式中,为了不对客户端暴露创建逻辑,我们通过一个共同的接口来创建对象。让其子类实现工厂接口,返回一个抽象的产品。

 如下使用工厂模式实现一个运算器的uml图:

使用工厂模式来实现计算器。

具体代码:

计算器类:

此类为父类,统管所有运算符类的共同接口。

 运算符类

继承于计算器类,也是工厂要实例的对象。

 工厂类

根据需要对运算符类进行实例

 客户端类

关于策略模式:

它定义了算法家族,分别封装起来,让它们之间可以相互转换,此模式让算法的变化不会影响到使用算法的客户。在策略模式中,我们创建表示各种策略的对象和一个为策略对象服务的 context 对象。

如下是工厂模式跟策略模式的结合:

客户端无需看到策略的创建逻辑,只需要跟context对象打交道即可。而context对象则跟各个策略对象打交道,需要哪一个策略对象就创建哪一个。

同时,策略抽象对象(指父类)仅是提供一个接口(一般为共同的行为)。子类则根据不同的需求来实现不同的行为。

UML图:

例子的UML图:

结合工厂模式和策略模式来实现商场的打折、返利等功能。

 代码实现:

上下文类:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年6月10日
下一篇 2022年6月10日

相关推荐