C#中枚举与位枚举的区别和使用

//调用普通枚举时如图所示,调用位枚举多选时需要中间加一个  ““  |  ””  !!!
枚举和位枚举的定义   位枚举定义时需要加一个[Flags],还要赋值第二个是第一个的二倍
class Program
    {
        static void Main(string[] args)
        {
            //调用性别枚举
            Stu s = new Stu() { ID = 1, Name = "张三", SSex = Sex.,Status = Sta.党员 ,Hobbys = Hobby.| Hobby.爬山};

            //判断这个学生是否包含
            if (Hobby..HasFlag(Hobby.))
            {
                Console.WriteLine("去吃饭!!!");
            }

            
            Console.ReadKey();
        }

        

        //学生类
        public class Stu
        {
            public int ID { get; set; }
            public string Name { get; set; }
            public Sex SSex { get; set; } //0是男,1是女
            public Sta Status { get; set; }
            public Hobby Hobbys { get; set; }
        }

        //定义枚举
        public enum Sex
        {,}

        //位枚举
        [Flags]
        public enum Hobby
        {
            爬山 = 1,
            游泳 = 2,
            睡觉 = 4,= 8
        }

        public enum Sta
        {
            党员,
            干部,
            村长,
            书记
        }

        
    }
原文地址:https://www.cnblogs.com/xuxueming/p/11913708.html