设计模式之访问者模式实例(C++)
发布时间
阅读量:
阅读量
访问者模式解析
描述一种针对特定对象结构中各个组成部分的操作方式,该方式允许我们在不修改各组成部分所属类别的基础上,定义适用于这些组成部分的新操作。
访问者模式由以下五个组成部分构成:Visitor(抽象访问者)、ConcreteVisitor(具体访问者)、Element(抽象元素)、ConcreteElement(具体元素)以及ObjectStructure(对象结构)。
访问者模式实例之购物车

通过类图可以发现,BuyBasket(购物车)具备对Product(产品)进行添加与删除的操作关联,并通过accept函数将Visitor参数传递给Product,从而实现Product对Visitor的被动访问(实际上是在Product内部调用Visitor的visit函数,并传递this指针以识别具体的产品实例,该过程涉及函数重载)。
以下为C++语言的实现方式。
抽象访问者Visitor(访问者类)
//抽象访问者Visitor(访问者类)
class Apple;
class Book;
c
全部评论 (0)
还没有任何评论哟~
