是否可以在C#中定义枚举,使其成为不同枚举的超集?

时间:2018-02-02 16:06:58

标签: c# enums

我并不是试图在枚举之间创建继承,我理解这个主题上关于SO的其他许多问题是不可能的。

相反,我想定义一个枚举,其名称和值包含不同枚举的枚举以及一些额外的名称/值定义。

这实际上仅用于组织目的,因为它实际上没有提供我能想到的其他功能。但是,我认为它会有所帮助,因为它允许我在意图方面暗示枚举之间的类型继承(在源代码中,可能是后编译它将不再可见)。此外,它将节省我少量的打字和/或复制/粘贴。

例如:

    public enum ICanCountToThree
    {
        One = 1,
        Two,
        Three
    }

    public enum ICanCountToFive
    {
        ICanCountToThree,
        Four,
        Five
    }

在上面的代码中," ICanCountToThree"只是被认为是一个枚举成员名称,而不是对它上面直接定义的枚举的引用,但我想知道是否有某种形式的语法允许编译器理解我想要一个的定义,二,三,然后还加入四和五。

编辑:这个被标记为重复的问题是询问枚举之间的实际继承(或者至少,它在答案中以这种方式解释)。我只是在寻找什么相当于一个句法简写(我怀疑不存在,但遗憾,但想验证),其中需要在编译时解决的问题不是问题(两个枚举的值都是在编译时已知并且我正在寻找的东西基本上是一种奇怪的宏形式。)

我没有在标记的问题中找到我所询问的地方(至少不是以明确的方式解决。也许是#34; no"的答案也包含了这个问题,但它是不清楚,因为无法执行枚举的继承并不意味着我所寻找的那种短手的存在并不存在)并且答案中提出的解决方案对于我希望实现的目标而言将是不必要的复杂。 / p>

0 个答案:

没有答案