定义具有未知数量的孩子的树木

时间:2013-09-07 16:25:49

标签: c++

我需要定义一个树,其中每个节点的子节点数是未知的。 使用数组无法完成,因为子数可能超过或低于估计值。 所以我需要使用一个链表,其中列表将是节点的子节点。

如何做到这一点

class emp
{
    string name;
    emp* parent;
    employee* child;

};

struct employee
{
    emp* junior;
    employee* next;
}; 

在此代码中,在调用employee child之前未定义employee,因此它会给出错误。 请提出修改建议。

2 个答案:

答案 0 :(得分:1)

employee类定义之前转发声明emp

struct employee;

class emp
{
  //....

答案 1 :(得分:0)

我个人会说你应该使用vector<employee>或`列表而不是建立自己的链表。

另请注意,使用链接列表会增加相当多的额外内存使用量,因为每个节点的开销通常为32-64字节。

相关问题