假设我有以下关系:
class A {
public:
A(B& _objB);
B& objB;
};
A::A(B& _objB)
: objB(_objB) {}
Run Code Online (Sandbox Code Playgroud)
这似乎不符合我对聚合或组合的UML定义的理解.它感觉就像一个组合,但在组合中,拥有对象的生命周期应该绑定到父对象.在这种情况下,在创建A之前和销毁A之后存在objB.A不能没有B,但B可以没有A.这就是标准组合关系的反面.这会使它成为聚合还是其他什么?
| 归档时间: |
|
| 查看次数: |
330 次 |
| 最近记录: |