参数传递时出现了问题(指针的引用传递),主要想知道参数传递时为什么会出错,求大神解答,多谢!

template void init( BinNode* & root) {
static int e;
cin >> e;
if (e == 0)return;
root = new BinNode(e);
init(root->lc);
init(root->rc);
}
函数调用:
BinNode*s;
init(s);//此处总是报错:严重性 代码 说明 项目 文件 行 禁止显示状态
错误 C2664 “void init(BinNode *&)”: 无法将参数 1 从“BinNode *”转换为“BinNode *&”

楼主可以将这个语句template void init( BinNode* & root) 中参数改为BinNode **root); 然后实参为“init(&s);

抱歉,刚才看到,这里编辑器把类型参数隐藏了,麻烦再看下,函数定义
函数的调用