风中小刺猬

文章
5
资源
0
加入时间
3年0月9天

设计模式学习笔记--访问者(Visitor)模式写在模式学习之前分派(Dispatch)访问者模式的定义访问者模式的结构访问者模式的适用场景访问者模式的优点和缺点

访问者模式的目的是封装一些施加于某种数据元素结构之上的操作。访问者模式适用于数据结构相对固定的系统,它把数据结构和作用于数据结构上的操作之间的耦合解脱开,使得操作集合可以相对自由的演化。数据结构的每一个节点,都可以接受一个访问者的调用,此节点向访问者对象传入节点对象,而访问者对象则反过来执行节点对象的操作。这样的过程叫做双重分派。节点调用访问者,将它自己传入,访问者则将某算法针对此节点来执行。双重分派意味着施加于节点之上的操作是基于访问者和节点本身的数据类型,而不仅仅是其中的一者。