假设我有一个类BST和一个子类RBT。类BST具有如下包装函数:
void BST::walk(ostream& to)
{
inorder_walk(root, to);
}其中inorder_walk是一个虚拟函数。当我的RBT类中有一个新的虚拟化inorder_walk函数时,我是否需要将walk也设为虚拟的,即使在这两个类中walk只需要调用inorder_walk?也就是说,尽管walk函数不是虚拟的,但当它调用其中的虚拟函数时,C++知道调用虚拟化函数吗?提前感谢你的回答!
发布于 2021-03-14 10:30:04
不,你不需要把它变成虚拟的。
https://stackoverflow.com/questions/66620254
复制相似问题