摘要:
定义: 为其他对象提供一种代理以控制对这个对象的访问。 其实就是在访问对象时引入一定程度的间接性,因为这种间接性,可以附加许多用途。 结构图: 代码: //Subject 类 class Subject { //对外暴露的共用接口 public: void Request(); } //RealSu 阅读全文
摘要:
定义: 动态的给一个对象增加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活。 就是以组合的方式动态的为对象添加功能,比起继承,更符合开闭原则。 结构图: 代码: //Component类 class Component { public: //抽象核心职责,装饰器需要在这个职责基础上增加 阅读全文