template <class T>
void BT<T>::inOrder(void (*inOrderPtr)(T&))
{
inOrderPtr(inOrder(this->root));
}
template <class T>
void BT<T>::inOrder(Node<T>* root) const
{
if (root->left != NULL)
inOrder(root->left);
//something here
if (root->right != NULL)
inOrder(root->right);
}
好的,我正在尝试通过递归创建此遍历。我实际上之前发布了这个问题,但由于我必须使用函数指针,所以我做错了。我不明白我应该做什么。我有调用私有包装的公共包装器......但是公共包装器是带有传入函数的包装器,所以我该怎么办?我觉得自己很迟钝,所以即使有人给我一个小小的暗示,我也相信我会明白的。我只是不知道从这里去哪里。
调用它的代码示例如下:
first.inOrder(print_val)