其他分享
首页 > 其他分享> > 访问者模式

访问者模式

作者:互联网

当一类对象有相同的操作函数,但是各自的实现却不一样。

通常可以为它们定义一个共同基类,再在基类里定义它们都拥有的虚函数。

缺点是当操作函数增加或删减时,就得修改基类以及所用子类。

优点是当子类对象增加时,只需要写新增子类的内容。

使用访问者模式,会把数据与操作分离,也能把一个子类实现的源文件内容缩减,也算是优点。

最重要的优点应该还是,当操作函数增加或删减时,只需要继承访问基类,实现对各个数据子类的操作函数即可。

但是,当数据子类对象增加时,除了写新增子类的内容外,还需要修改访问基类与所有的访问子类。

所以,访问者模式适用于数据子类的种类较少;操作较多,且更新频繁的情景。

相对的,一般的继承多态,适用于操作较少;数据子类较多,且更新频繁的情景。

对照这篇文章可以自行体会一下。

标签:函数,子类,删减,模式,基类,操作,访问者
来源: https://www.cnblogs.com/map1e/p/15547741.html