类指针不能用NULL??
我写了一个TreeNode类:
class TreeNode
{
public:
TreeNode* left;
TreeNode* right;
char value;
TreeNode(char a,TreeNode* lt,TreeNode* rt):value(a)
{
left=lt;
right=rt;
}
};
在另外一个类Tree中调用
void Tree::convertTreeNode()
{
Nodes=new TreeNode[Size];
for(int i=0;i <Size;i++)
{
TreeNode newOne=new TreeNode(b[i],NULL,NULL);//出错
Nodes[i]=newOne;
}
}
其中
Nodes 是一个指向TreeNodes数组的指针,大小为Size,定义是TreeNode* Nodes;
b 是一个char数组,大小为Size;
Size 为一个int变量
错误是:
F:\VISUAL学习\PostOrder\Tree.cpp(33) : error C2440: 'initializing ' : cannot convert from 'class TreeNode * ' to 'class TreeNode '
No constructor could take the source type, or constructor overload resolution was ambiguous
Error executing cl.exe.
为什么会出现这样的问题啊?
[解决办法]
前面少了个*
TreeNode* newOne=new TreeNode(b[i],NULL,NULL);//出错