![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
搬砖小chen
相信坚持的力量
展开
-
装饰模式C++实现
#include #include class Person { public: Person() = default; virtual void showDecorator() { return; } }; class Man : public Person { public: Man() = default; Man(std::string str) : Name(str){原创 2016-07-27 15:49:01 · 241 阅读 · 0 评论 -
代理模式C++实现
#include #include class Method //公共接口 { public: void virtual giveDolls(){ return; } void virtual giveFlowers() { return; } protected: private: }; class Boy : public M原创 2016-08-03 19:21:52 · 178 阅读 · 0 评论 -
策略模式模式C++实现
策略模式: 当用户需要选择不同的算法或行为时,如果把这些算法或行为写在一个类里,通过判断来选择的话,这个类将变得非常复杂并且难以维护。策略模式就是构造一个抽象类,具体的算法或者行为继承这个类,让用户来选择。这样做的好处是,可以随时增加或者修改行为,即增加、修改算法或行为的类就可以了。 策略模式和简单工厂模式的差别: 简单工厂模式是通过一个抽象类来构造新对象,用户接触不到具体对象。 策略模式原创 2016-07-26 20:50:49 · 430 阅读 · 0 评论 -
简单工厂模式C++实现
面向对象的优点: 1、可维护:修改简单 2、可复用:可以在多个模块重复使用 3、可扩展:可以方便地加入一些其他功能 4、灵活性好:可以适应不同的需求 简单工厂模式: 对程序进行功能分析,不同功能模块独立原创 2016-07-25 17:24:46 · 367 阅读 · 0 评论 -
单例模式及其析构
#include <cstddef> class Single { public: ~Single() {} static Single* instance() { if (ptr == NULL) { ptr = new Single; } return ptr; } voi...原创 2018-10-12 20:59:12 · 3686 阅读 · 0 评论