这种关系是聚合,组合还是其他什么?

时间:2017-03-14 22:37:32

标签: c++ uml

我们说我有以下关系:

class A {
public:
   A(B& _objB);
   B& objB;
};

A::A(B& _objB)
 : objB(_objB) {}

这似乎不符合我对聚合或组合的UML定义的理解。它感觉就像一个组合,但在组合中,拥有对象的生命周期应该绑定到父对象。在这种情况下,在创建A之前和销毁A之后存在objB。没有B就无法生活,但B可以没有生活。这与标准的作文关系相反。这会使它成为聚合还是其他什么?

1 个答案:

答案 0 :(得分:1)

已经回答here ,答案是聚合。没有人使用B。

相关问题