我正在为我的公司设计一个库存类型系统,我有几种不同类型的产品。其中一些是两种或更多种类型的组合:
基本类型:项目
Mixin Classes :MA,MB,MC,MAB
派生类型:
A(MA +项目),
B(MB +项目),
C(MC +项目)
和打包的部件,:
A + B(MAB +项目)
A + B + C(MAB + C)
*我将来需要能够在此层次结构中添加更多内容。
我正在考虑使用Mixin类,其中每个单独的部分都来自Item,以及一个Mixin类。我以前从未真正成功地写过层次结构。我真的想知道是否有人认为这是一个很好的设计这样的系统?如果没有,还有其他想法吗?
答案 0 :(得分:0)
多重继承可能会导致代码复杂化。
由您决定哪个更简单:
class MyItem : public MA<MB<C> > {}; // I'm not sure how your mixin syntax works.
或:
class MyItem: public A, public B, public C {}; // multiple inheritance