![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++设计模式
小鬼识途
一直在学习
展开
-
C++设计模式之策略模式
应用场景:定义算法家族,分别封装起来,让它们之间可以互相替换,让算法变化,不会影响到用户。 适用性:适合类中的成员以方法为主,算法经常变动。 缺陷:客户端要做出判断。 策略模式和简单工厂基本相同,但简单工厂模式只能解决对象创建问题,对于经常变动的算法应使用策略模式。 //策略基类 class COperation { public: int m_nFirst; int m_nSecond; virtual double GetResult() { double dResult = 0; re原创 2020-07-21 19:52:31 · 284 阅读 · 0 评论 -
C++设计模式之工厂模式
简单工厂模式 应用场景:主要用于创建对象。新添加类时,不会影响以前的代码。 核心思想:用一个工厂来根据输入的条件产生不同的类,然后根据不同类的 virtual 函数得到不同的结果。 适用性:不同情况创建不同的类。 缺陷:客户端必须要知道基类和工厂类,耦合性差。 工厂类与运算基类为关联关系。 //基类 class COperation { public: int m_nFirst; int m_nSecond; virtual double GetResult() { double dResult原创 2020-07-20 09:59:48 · 244 阅读 · 0 评论