从子项到父项的导航的C ++聚合

时间:2015-03-26 13:32:37

标签: c++ aggregation

如何实现聚合关系以及从子对象导航到其父对象的可能性?

我需要使用前向声明吗?

1 个答案:

答案 0 :(得分:1)

是的,你这样做。

struct Node;

struct Aggregator {
    Node* parent;

    Node aggregated1, aggregated2;
};

struct Node {
    Aggregator* aggregated_by;
};

虽然使用嵌套类型可能会躲避它,或者如果父类型具有相同的类型:

struct Node {
    Node* parent;

    Node aggregated1, aggregated2;
};