您必须虚拟化包装函数吗?

Do You Have to Virtualize Wrapper Functions?

假设我有一个 class BST 和一个 child class RBT。 class BST 有一个包装函数如下:

void BST::walk(ostream& to)
{
    inorder_walk(root, to);
}

其中inorder_walk是虚函数。当我的 RBT class 中有一个新的虚拟化 inorder_walk 函数时,我是否也需要将 walk 虚拟化,即使在两个 class 中都是 walk 需要做的就是调用inorder_walk?也就是说,虽然 walk 函数不是虚函数,但当它在其中调用虚函数时,C++ 是否知道调用虚函数?预先感谢您的回答!

不,您不需要将其虚拟化。