关于组合和聚合关系
组合关系和聚合关系十分相似,但是组合关系和聚合关系不同。聚合关系只是将某些组件聚合起来形成一个新的类。我们可以理解为这个类包含了这些聚合类,例如下图,我们知道GPU等组成了电脑,但是这些只是电脑的一部分。同时,如果电脑坏了,并不代表我们的GPU也坏了。所以我们可以理解为Computer类并不负责GPU类的构造和析构:
class Computer{
GPU* gpu;
但是组合就是不一样了,我们可以将组合看成是一个类 是另外一个列的微观的一个再现。我们可以看到公司是由部门组成的。公司不存在了,当然部门也就不存在了。公司类要负责部门类的构造与析构。
class Company{
List