前言:【模式总览】——————————by xingoo 模式意图 对于某个对象或者一组对象,不同的访问者,产生的结果不同,执行操作也不同。此时,就是访问者模式的典型应用了。 应用场景 1 不同的子类,依赖于不同的其他对象 2 需要对一组对象,进行许多不相关的操作,又不想在类中是现在这...
分类:
其他好文 时间:
2014-11-09 13:46:41
阅读次数:
142
PV(访问量):即Page View, 即页面浏览量或点击量,用户每次刷新即被计算一次。 UV(独立访客):即Unique Visitor,访问您网站的一台电脑客户端为一个访客。00:00-24:00内相同的客户端只被计算一次。 IP(独立IP):指独立IP数。00:00-24:00内相同IP地址之...
分类:
Web程序 时间:
2014-10-30 18:56:27
阅读次数:
259
访问者模式的目的是封装一些施加于某种数据元素结构之上的操作。
访问者模式适用于数据结构相对固定的系统,它把数据结构和作用于数据结构上的操作之间的耦合解脱开,使得操作集合可以相对自由的演化。
数据结构的每一个节点,都可以接受一个访问者的调用,此节点向访问者对象传入节点对象,而访问者对象则反过来执行节点对象的操作。这样的过程叫做双重分派。节点调用访问者,将它自己传入,访问者则将某算法针对此节点来执行。
双重分派意味着施加于节点之上的操作是基于访问者和节点本身的数据类型,而不仅仅是其中的一者。...
分类:
其他好文 时间:
2014-10-28 15:34:20
阅读次数:
259
最近20天都在写这个...终于完工了(走向无尽的重构道路...)...感谢VC聚聚的博文和RE2作者的博客指导,感谢VC聚聚的源码参考.非常感谢!启发很大.vc聚聚的正则语法树遍历部分的方案.真是精妙!之前我虽然知道用Visitor模式遍历异构树,但是不知道怎么写vistor的框架满足需求.用的时候...
分类:
其他好文 时间:
2014-10-26 01:39:00
阅读次数:
273
interface Visitor {
void visit(Gladiolus g);
void visit(Chrysanthemum c);
}// concrete visitor 名称访问
class StringVisitor implements Visitor {
String s;
public String toString() {
return s;
}
...
分类:
编程语言 时间:
2014-10-14 15:48:28
阅读次数:
182
访问者模式(Visitor):把数据结构和作用于结构上的操作解耦合,使得操作集合可相对自由地演化。访问者模式适用于数据结构相对稳定而算法又容易变化的系统。访问者模式的优点是增加操作很容易,因为增加操作意味着增加新的访问者;而它的缺点就是增加新的数据结构很困难。
访问者模式就是一种分离对象数据结构与行为的方法,通过这种分离,可达到为一个被访问者动态添加新的操作而无需做其它的修改的效果。...
分类:
编程语言 时间:
2014-10-13 03:18:59
阅读次数:
229
访问者模式中,有一个数据体,添加了各个访问对象。这些访问对象在不同的状态时,会有不同的反应。这种模式中,对象与状态相分离,互不干扰。Visitor.h内容 1 #ifndef Visitor_H_H 2 #define Visitor_H_H 3 4 5 #include 6 #i...
分类:
其他好文 时间:
2014-09-20 17:44:49
阅读次数:
250
传统访问者模式 VS 无环访问者模式 (ACyclic Visitor)...
分类:
其他好文 时间:
2014-09-16 15:58:10
阅读次数:
371
形象例子: 情人节到了,要给每个MM送一束鲜花和一张卡片,可是每个MM送的花都要针 对她个人的特点,每张卡片也要根据个人的特点来挑,我一个人哪搞得清楚,还是找花店老板和礼品店老板做一下Visitor,让花店老板根据MM的特点选一 束花,让礼品店老板也根据每个人特点选一张卡,这样就轻松多了;访问者模....
分类:
其他好文 时间:
2014-09-01 21:08:53
阅读次数:
274
1.这个例子使用 String 对象的 toUpperCase() 方法来把文本转换为大写:var message="Hello world!";var x=message.toUpperCase();2.条件运算符写法:greeting=(visitor=="PRES")?"Dear Presid...
分类:
其他好文 时间:
2014-09-01 12:21:43
阅读次数:
148