我有一个架构,它使用访问者模式在树上实现多个传递(AST发生时)。在其中一个传递中,我需要将一些数据与一个节点(nodeX
)相关联,然后从下面的某个点获取我的数据来自对nodeX
的引用。我想以一种不会将访问者/传递的实现推送到树节点的方式来做到这一点。
是否有一些巧妙的方法可以让它发挥作用?
思路:
void*
在每个节点上(丑陋,不是类型安全)hash_map<Node,Data>
(不像我想的那么干净,谁拥有它?)答案 0 :(得分:1)
hash_map听起来对我来说是最好的方式。访客将拥有它。