空类而不是枚举-糟糕的主意吗?
|
我目前正在使用一个枚举来描述许多可能的操作系统平台。我拥有WIN32,SOLARIS64,LINUX32,但也拥有更广泛的类别,例如ALLWIN和ALLUNIX。我在代码中有一个地方需要确定给定平台是否属于另一个平台。对我来说,这听起来像是继承,但显然枚举不能相互继承。
然后,我想到了将这些平台从1枚举变为彼此继承的空类。我觉得这在概念和空间上都是一个糟糕的主意,但不是C#的高手,我想我会在这里发布以寻求更多有经验的意见。有什么想法吗?
这看起来像:
public class ALL {};
public class ALLWIN : ALL {};
public class WINNT : ALLWIN{};
public class WIN32 : WINNT{};
...
等等等等。
没有找到相关结果
已邀请:
3 个回复
鞘垒飘
当您检查该平台是否为特定系统时,可以通过按位AND进行操作,如以下代码所示:
那有意义吗?
磋判粗惊
等等... 链接到枚举。
购藏盗码韦
这可能与您要完成的工作完全不符。 你怎么看? 如其他地方所述,使用枚举标志可以作为一种不错的轻量级解决方案。唯一要注意的是,您不能拥有超过64种操作系统和类别的组合。