Visitor and Iterator Design Pattern 源码
访客模式 作者:Brian ( ) 您必须以两人一组的方式进行本实验 迭代器类 您已经提供了一个迭代器类Iterator ,用户可以创建它来遍历整个表达式树。 该迭代器的特殊之处在于它多次访问树的每个节点。 没有子节点的节点将被访问一次。 有一个孩子的节点被访问两次(访问孩子之前和之后)。 带有两个孩子的节点将被访问三次(访问第一个孩子之前,访问第一个孩子之后但访问第二个孩子之前,然后访问第二个孩子之后再次访问)。 迭代器指向构造时要访问的第一个节点。 调用next()会将迭代器前进到下一个要访问的节点。 current_op()返回指向要访问的当前节点的指针,而current_index()告诉您正在对该节点进行哪个访问(对于二进制运算符,该访问为0、1或2)。 当is_done()返回true时,迭代已完成,并且您不得在迭代器上调用任何其他函数。 为了支持节点的简单迭代, ge
用户评论