C++组合(简介)

组合:一个类包含另一个类对象

  • 继承是一种is-a的关系。也就是说每个子类对象都是一个基类对象
  • 组合是一种has-a的关系。假设B组合了A,每个B对象中都有一个A对象(一个对象里套了另外一个对象)

应用场景

  • 如果只单纯考虑代码的复用,优先考虑组合;
  • 继承体系下,父类和子类耦合性太高,父类中某一成员更改,各子类中所继承的成员都要改

C++组合(简介)_第1张图片

你可能感兴趣的:(C++,c++)