每当我想在许多文件中共享一个枚举时,我都会:-
BB派生。大多数情况下,会有一个班级对一个枚举。(1:1)
class B{
public: enum EnumB{ E1,E2 };
};
class C : public B{ /* .... access EnumB */}; //a kind of struct
class D : public B{ /* .... access EnumB */}; //a kind of widget/manager这种方法使C和D能够在没有前缀 B的情况下访问EnumB 。
我认为这没问题,因为我在一个非常狭窄的范围内使用这些枚举。(2-4班)
[经]某某职位还指出,可以将继承用于实用程序。
然而,我并不认为这是一种流行的方法:-
问题
顺便说一下,我认为明灯级不在这个问题的范围之内。
发布于 2017-03-12 07:27:53
它本身并不“危险”。只是设计得不好。
类继承应该定义一个IS-A关系。
当继承一些非“自然”的东西时,您可能会在以后的开发过程中遇到问题。
其中一些可能影响您的设计含义是:
有几个更好的解决方案:
https://stackoverflow.com/questions/42744566
复制相似问题