![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
ericming200409
C/C LINUX TCP/IP Python
展开
-
设计模式之C++实现(一)---简单工厂模式(Simple Factory)
简单工厂模式又称静态工厂方法模式(Static Factory Method),它不是23种模式之一,但是却是我们常用的设计模式之一。代码先行: 1: // abstract base class 2: class Operation 3: { 4: public: 5: int m_nFirst;原创 2011-05-23 23:53:00 · 2370 阅读 · 0 评论 -
设计模式之C++实现(二)---策略模式(Strategy)
思想本质:策略模式将具体的策略与用户隔离,用户不知道使用的具体策略,这样我们就可以根据需要灵活地替换我们的策略。 策略模式的类图如下: Strategy是策略抽象类,有很多的具体策略类继承它,Context负责与用户的交互,同时可以使用不同的具体策略来配置Context。下面我们以对数组的排序 来实现并说明策略模式。 1: /* abstract strategy class******************************/原创 2011-05-24 23:22:00 · 2556 阅读 · 0 评论 -
设计模式之C++实现(三)---装饰者模式(Decorator)
思想本质:动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活。 设计要点: 1. 装饰者和被装饰对象有相同的超类型。 2. 可以用一个或多个装饰者包装一个对象。 3. 装饰者可以在所委托被装饰者的行为之前或之后,加上自己的行为,以达到特定的目的。 4. 对象可以在任何时候被装饰,所以可以在运行时动态的,不限量的用你喜欢的装饰者来装饰对象。 5. 装饰模式中使用继承的关键是想达到装饰者和被装饰对象的类型匹配,而不是获得其行为。 模式类结构图: 下原创 2011-05-25 22:14:00 · 2532 阅读 · 0 评论