【发布时间】:2012-02-08 15:15:27
【问题描述】:
您好,我正在尝试制作一个通用树节点。这是抽象的泛型类
public abstract class TreeNode<T>
{
protected List<TreeNode<T>> _childNodes = new List<TreeNode<T>>();
protected TreeNode<T> ParentNode;
public T ObjectData { get; set; }
public TreeNode( TreeNode<T> parent, T data)
{
ParentNode = parent;
ObjectData = data;
}
}
它有一个伴随界面
interface TreeNodeOperations<T>
{
//Adds child to tree node
public abstract void AddChild<T>(T child);
//Performs N-Tree search
public abstract TreeNode<T> SeachChild<T>(T child);
}
我想要做的是继承这两个:
public class FHXTreeNode<T>: TreeNode<T>, TreeNodeOperations<T> where T : ParserObject
{
public FHXTreeNode(FHXTreeNode<T> parent, T data) ---> # **ERROR** #
{
ParentNode = parent;
ObjectData = data;
}
//Adds child to tree node
public override FHXTreeNode<T> AddChild<ParserObject>(T childData)
{
FHXTreeNode<T> child = new FHXTreeNode<T>(this, childData);
//_childNodes.Add(child);
return child;
}
}
错误是:'Parser.Objects.TreeNode' 不包含接受 0 个参数的构造函数
请帮忙!
【问题讨论】:
标签: c# generics constructor multiple-inheritance