How do I declare a nested enum?

后端 未结 12 942
借酒劲吻你
借酒劲吻你 2020-12-08 18:29

I want to declare a nested enum like:

\\\\pseudocode
public enum Animal
{
  dog = 0,
  cat = 1
}

private enum dog
{
   bulldog = 0,
   greyhound = 1,
   hus         


        
12条回答
  •  抹茶落季
    2020-12-08 19:10

    This solution returns int, not type. But I am using it like this:

    public static class Animals
    {
        public static class Vertebrates
        {
            public static class Mammals
            {
                public enum Dogs
                {
                    BullDog = 0,
                    Greyhound = 1
                }
                public enum Cats
                {
                    persian = 0,
                    Greyhound = 1
                }
            }
    
            public static class Birds
            {
                public enum FirstType
                {
                    FirstType0 = 0,
                    FirstType1 = 1
                }
                public enum SecondType
                {
                    SecondType0 = 0,
                    SecondType1 = 1
                }
            }
        }
    }
    

    Usage:

    int i = (int)Animals.Vertebrates.Mammals.Dogs.BullDog; 
    int j = (int)Animals.Vertebrates.Birds.FirstType.FirstType0;
    

提交回复
热议问题