gpt4 book ai didi

design-patterns - 访客模式及遍历机制

转载 作者:行者123 更新时间:2023-12-03 01:16:07 24 4
gpt4 key购买 nike

我有一个图表和一组非常简单的访问者,它们对图表的顶点/边进行一些计算,例如获取边的总权重并漂亮地打印图表。

我想更进一步,让访问者以 DFS 方式访问图表。

但是,我认为访问者模式应该与遍历机制分开,并且应该使用其他模式(例如迭代器)来创建遍历方法。我是正确的还是我错过了什么?

最佳答案

正如评论所说,Visitor 并不关心遍历机制本身。这是由迭代器或其他具体遍历方法来决定的工作。

如果您有迭代器,则访问者并不是“不需要”的。这取决于您想要应用于正在迭代的项目的操作的复杂性。

Visitor 在逻辑上是现有对象的扩展,而不改变其实现。因此它的目的就是封装这个扩展以供重用和进一步扩展。

如果您有一个迭代器和一个想要应用于所有元素的简单操作,那么就不需要访问者。

关于design-patterns - 访客模式及遍历机制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11667295/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com