
C++设计模式之禅
文章平均质量分 52
清风徐来Groot
世间所有的相遇,都是久别重逢
展开
-
常用设计模式概念
桥接模式:将抽象部分与它的实现部分分离,使它们都可以独立地变化 【结构型模式】 生成器模式:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示 【创建型】 装饰模式:可以在不改变一个对象本身的基础上给对象增加额外的新行为【结构型模式】 ...原创 2022-05-13 10:44:59 · 134 阅读 · 0 评论 -
C++设计模式之工厂模式大集合
工厂模式一般分为三种:简单工厂模式、工厂方法模式、抽象工厂模式 一、简单工厂模式: 简单工厂模式,工厂类是创建产品的,它决定创建哪一种产品,就像领导决定采用那种技术方案样。举个例子,现在有宝马车和奔驰车两种车需要生产,但是只有一个工厂,且只能在同一时间生产一种车,这时就有工厂决定生产那种车了。例子虽然不是十分恰当,但是会其意即可。我们直接看UML类图和代码吧。 看代码就一目了然了: #include <iostream> using namespace std; enum C转载 2020-07-16 08:49:09 · 511 阅读 · 0 评论 -
C++设计模式之简单工厂模式和策略模式的区别
看到这个UML图回想一下 之前学习过的策略模式 二者好像差不多? 唯一不同的就是 简单工厂类 和 Context类。 小结:简单工厂类中是根据接收的条件创建一个相应的对象,而 Context 类接收的是一个对象,可以调用方法去执行此对象的方法。 总结简单工厂模式和策略模式 1.从类型上说:简单工厂模式属于创建型模式,而策略模式属于行为型模式。 经典例子: 斧子有很多种,有一个工厂专门负责生产各种需求的斧子。 工厂模式: 1)根据你给出的目的来生产不同用途的斧子,例如要砍人,那...原创 2020-07-15 17:37:16 · 510 阅读 · 0 评论 -
C++设计模式之简单工厂模式
https://www.cnblogs.com/wkfvawl/p/12695924.html 简单工厂模式 用一个单独的类来做创造实例的过程,就是工厂。 工厂模式有一种非常形象的描述:建立对象的类就如一个工厂,而需要被建立的对象就是一个个产品;在工厂中加工产品,使用产品的人,不用在乎产品是如何生产出来的。从软件开发的角度来说,这样就有效的降低了模块之间的耦合。 适用场合 在程序中,需要创建的对象很多,导致对象的new操作多且杂时,需要使用简单工厂模式; 由于对象的创建过程是我们不需要去关心的,而原创 2020-07-15 17:04:06 · 175 阅读 · 0 评论 -
C++设计模式之策略模式
https://blog.youkuaiyun.com/u013216156/article/details/95775654 https://blog.youkuaiyun.com/u012206617/article/details/88369499 策略模式:是指定义一系列的算法,把它们一个个封装起来,并且使它们可以互相替换。使得算法可以独立于使用它的客户而变化,也就是说这些算法所完成的功能是一样的,对外接口是一样的,只是各自实现上存在差异 何时使用:一个系统有许多许多类,而区分它们的只是他们直接的行为,比如说A产..原创 2020-07-15 13:51:27 · 214 阅读 · 1 评论 -
设计模式之单例模式
单例模式 单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点。 主要解决:一个全局使用的类频繁地创建与销毁。 何时使用:想控制实例数目,节省系统资源的时候。 如何解决:判断系统是否已存在单例,如果有则返回,没有则创建。 关键代码:构造函数是私有的。 实现单例模式必须注意一下几点: 单例类只能由一个实例化对象。 单例类必须自己提供一个实例化对象。 单例类必须提供一个可以访问唯一实例化对象的接口。 单例大约有两种实现方法:懒汉...原创 2020-07-15 10:26:42 · 200 阅读 · 0 评论