未命名的函数对象作为参数

时间:2013-10-17 11:51:16

标签: c++ binary-tree traversal

我正在构建一个二叉树,我的binTree类中包含以下函数头:

public:
    ...
    void inorder(void(*)(T&));                // inorder traversal of tree
    ...
private:
    ...
    void inorder(Node<T>*, void(*)(T&));      // private version of inorder()
    ...

但是,每次我编译代码时,都会从以下实现中收到错误:

template<class T>
void binTree<T>::inorder(void(*)(T&) f) {
    inorder(root,f);
}

它告诉我f之前应该有一个逗号。如果我放弃f,它将编译,只要我不调用私有版本的inorder。如何正确调用私有版本的inorder?

0 个答案:

没有答案