Extending an enum via inheritance

后端 未结 15 2507
温柔的废话
温柔的废话 2020-11-27 17:40

I know this rather goes against the idea of enums, but is it possible to extend enums in C#/Java? I mean \"extend\" in both the sense of adding new values to an enum, but a

15条回答
  •  失恋的感觉
    2020-11-27 18:25

    A temporary/local workaround, when you just want very local/one time usage:

    enum Animals { Dog, Cat }
    enum AnimalsExt { Dog = Animals.Dog, Cat= Animals.Cat,  MyOther}
    // BUT CAST THEM when using:
    var xyz = AnimalsExt.Cat;
    MethodThatNeedsAnimal(   (Animals)xyz   );
    

    See all answers at: Enum "Inheritance"

提交回复
热议问题