expected initializer before '<' token问题
#include<iostream>
using namespace std;
template<class DataType>
struct BiNode
{
DataType data;
BiNode<DataType>*lchild,*rchild;
};
template<class DataType>
class BiTree
{
public:
BiTree(){root=Creat(root);
}
~BiTree(){Release(root);
}
void PreOrder(){PreOrder(root);
}
private:
BiNode<DataType>*root;
BiNode<DataType>*Creat(BiNode<DataType>*bt);
void Release(BiNode<DataType>*bt);
void PreOrder(BiNode<DataType>*bt);
};
template<class DataType>
void BiTree<DataType>::PreOrder(BiNode<DataType>*bt)
{
if(bt==NULL)return;
else{
cout<<bt->data;
PreOrder(bt->lchild);
PreOrder(bt->rchild);
}
}
template<class DataType>
[i]BiNode<DataType>*Bitree<DataType>::Creat(BiNode<DataType>*bt)
{
cin>>ch;
if(ch=='#')bt=NULL;
else{
bt=new BiNode;
bt->data=ch;
bt->lchild=Creat(bt->lchild);
bt->rchild=CREAT(bt->rchild);
}
return bt;
}
main()
{
BiTree<char> BT;
BiNode<char>*root;
BT.PreOrder();
}
错误是这个expected initializer before '<' token,
这个是什么意思啊,怎么改
错误在我下划线的位置