如何实现层级class系统

How to implement a hierarchy class system

我对 C++ 处理这种情况的方式有点陌生,所以我没有立即使用单例模式,而是决定问这个问题,看看是否有更好的选择。

是否有任何其他方法来实现一个系统,我们有一个主 class 可以访问一行 classes,它们是彼此之间的朋友?我没有找到任何其他方法来完成这项工作:由于 classes 的工作方式完全不同,因此继承将不起作用,并且使用成员 classes 不是一种选择iether,因为那时我将构造相同 class 的另一个实例,这不是一个选项,因为我有一个非原子 class 像记录器,而且应该只有一个它的实例。

这就是我的想法:

简而言之:

  • YES 可能有很多 class 彼此之间是朋友,就像你在图表上显示的那样.

  • NO,不建议这样做,因为你的系统耦合度很高,每次改一个东西class,它可能会影响所有其他人。

设计模式,例如 singleton pattern, and other techniques such as dependency injection are there to help to avoid such situations, and reduce coupling 以方便维护并拥有更健壮的系统。