
设计模式
文章平均质量分 55
设计模式
code-016
有问题请私信,停更一段时间。
展开
-
【设计模式】类关系
文章目录引言一、依赖Dependency二、关联Association(1)弱关联(2)强关联 引言 类与类之间的耦合性: 一、依赖Dependency 例:A类是B类的成员函数的参数、返回值(局部变量) class A{}; class B{ public: void FunB(A& a){} A GetA() { return A(); } }; 二、关联Association 例:A类是B类的一个成员属性 (1)弱关联 class A{}; class B{ privat原创 2022-05-11 14:51:38 · 225 阅读 · 0 评论 -
【设计模式】工厂模式的map优化
文章目录一、有map,无unique_ptr版本(1)代码(2)结果二、有map,有unqiue_ptr版本(1)代码(2)结果 一、有map,无unique_ptr版本 (1)代码 Factory.h #ifndef FACTORY_H #define FACTORY_H #include <iostream> #include <string> #include <memory> #include <map> using namespace std; /原创 2022-03-08 23:51:18 · 502 阅读 · 0 评论 -
【设计模式】工厂模式
文章目录一、工厂模式二、工厂模式的实现三、unique_ptr的优化 一、工厂模式 工厂模式是对简单工厂模式的优化,以汽车为例,工厂模式有以下角色 抽象工厂类:抽象汽车工厂 具体工厂类:轿车工厂类、公交工厂类 抽象产品类:汽车产品类 具体产品类:汽车、公交 各类关系图: 二、工厂模式的实现 Factory.h #ifndef FACTORY_H #define FACTORY_H #include <iostream> #include <string> using name原创 2022-03-07 13:08:15 · 475 阅读 · 0 评论 -
【设计模式】简单工厂模式
文章目录一、简单工厂模式二、使用unique_ptr的优化三、简单工厂模式总结(1)优点(2)缺点(3)使用场景 一、简单工厂模式 以汽车厂生产为例子: 工厂角色:(汽车厂)一个静态公有成员方法负责生产符合要求的产品; 抽象产品:是一个抽象类,其派生类有各种各样的产品; 具体产品:汽车car、公交车bus 对应的代码: SimpleFactory.h #ifndef SIMPLEFACTORY_H #define SIMPLEFACTORY_H #include <iostream> #in原创 2022-03-07 11:38:24 · 210 阅读 · 0 评论 -
【设计模式】单例模式
????废话不多说,直接上代码,看注释就行了 #include <iostream> using namespace std; class SingleDemon { public: //3.类内的public对外提供构造函数的接口 //创建一个返回值为一个对象的地址,在函数体内进行创建 //加静态,因为静态的成员对象只能调用静态的成员方法 static SingleDemon* Create() { if (s == NULL) { s = new SingleDe原创 2021-06-04 17:55:37 · 289 阅读 · 0 评论