大胖的部落格

Just a note

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  112 随笔 :: 0 文章 :: 3 评论 :: 0 Trackbacks

2009年6月9日 #

     摘要: 具体实现类继承于抽象基类,Proxy类也继承于抽象基类,并有一个实现类类型的指针,当需要时才创建实现类对象,调用实现类的函数。  阅读全文
posted @ 2009-06-09 20:43 大胖 阅读(99) | 评论 (0)编辑 收藏

     摘要: 对同样内容的对象,只创建一份。
需要显示对象时,若对象存在,则返回已存在对象的地址;若不存在,则创建对象再返回。  阅读全文
posted @ 2009-06-09 16:55 大胖 阅读(107) | 评论 (0)编辑 收藏

     摘要: Fasade模式提供一个简单接口,调用复杂的子系统接口。  阅读全文
posted @ 2009-06-09 16:14 大胖 阅读(124) | 评论 (0)编辑 收藏

     摘要: 当想针对某个子类对象添加新功能时,可以不采用继续继承该子类产生新的派生类的方法。
Decorator更加灵活地动态扩展目标子类。
从基类新派生的Decorator类保存了基类类型的指针,重写了需要扩展功能的函数。
Decorator类对象构造时传入基类类型指针(实际指向目标子类),这样内部可以调用目标子类的方法,重写时调用目标子类方法,并加入新的操作。
Decorator对象就可以取代目标子类对象,可以调用原来的操作,还加入了新的操作,且类型都为基类类型。  阅读全文
posted @ 2009-06-09 15:56 大胖 阅读(142) | 评论 (0)编辑 收藏

     摘要: Component使用户对组合对象和单一对象的操作具有一致性。
无论是组合对象还是单一对象,都从抽象基类派生;抽象基类声明所有对象共有的操作和组合对象特有的操作。
单一对象在重写针对组合对象的操作时可返回错误。
这样用户可以用同样的代码操作抽象基类类型指针,实现对组合对象和单一对象的操作,而无需关心操作对象具体类型是什么。  阅读全文
posted @ 2009-06-09 15:16 大胖 阅读(147) | 评论 (0)编辑 收藏

     摘要: 将抽象与实现分离,对实现部分的修改,不会影响抽象部分的代码。  阅读全文
posted @ 2009-06-09 14:32 大胖 阅读(134) | 评论 (0)编辑 收藏

     摘要: 当需求的接口描述和已经存在的实现不匹配时,可以通过继承和组合两种方法实现adapter模式,从而用已有的实现满足需求。
  阅读全文
posted @ 2009-06-09 10:37 大胖 阅读(97) | 评论 (0)编辑 收藏

     摘要: 当要创建的对象的内容与一个已经创建的对象内容相同时,无需再重新输入相同参数创建对象,可以利用拷贝构造函数创建已知对象的拷贝。
ProtoType所提供的接口就是对自身拷贝构造函数的封装。  阅读全文
posted @ 2009-06-09 09:59 大胖 阅读(112) | 评论 (0)编辑 收藏

     摘要: 一个复杂对象的创建包括两个部分:每个部分的创建和按照一定的算法将它们组合起来。  阅读全文
posted @ 2009-06-09 09:36 大胖 阅读(121) | 评论 (0)编辑 收藏