枚举

C# 枚举(Enum

枚举是一个有命名的常数

枚举类型    用于声明一组命名的常数  基本数据类型(值类型)

声明枚举的一般语法:

enum <enum_name>            { enumeration list };

     指定枚举的类型名称。  是一个用逗号分隔的标识符列表

枚举列表中的每个符号代表一个整数值,一个比它前面的符号大的整数值。默认情况下,第一个枚举符号的值是 0.例如:

enum Days { Sun, Mon, tue, Wed, thu, Fri, Sat };

所有枚举类型都隐式地继承System.Enum类型,System.Enum类型是继承自System.ValueType类型唯一不为值类型的引用类型。

 ---------------------------------

C# 标记枚举(Flags

枚举类型    用于声明一组命名的常数  基本数据类型(值类型)。对比枚举值是互斥的。

标记枚举和枚举比较就是在定义前面声明一个[Flags]

使用方法

var permission = Permission.Create | Permission.Read | Permission.Update | Permission.Delete

就例如这一句话,| 符号是拼接标记枚举

permission = permission & ~Permission.Update;

&~表示去掉permission 中的Update这个枚举

所以说&~是表示去除某个枚举

var isCreate = (permission & Permission.Create) != 0;  //或者 

var isCreate =(permission & Permission.Create)== Permission.Create

这两句话表示的是测试permission 中是否存在某个枚举,&是关键字,如果没有就返回0,所以说在标记枚举中常数0要慎重使用

------------------------------------------------------------------------

这些是在我们商场项目中常用的一些状态枚举

 无效状态       Invalid = 0,                                        

  客户询价       CustomerQuery = 1,

 客户落单    CustomerOrdered = 2,
 客户付款      ReceiverCustomerPayment = 4,
 向供货商订货      SupplierOrdered = 8,
供货商确认货期       SupplierOrderTerm = 16,
收到货品      RecieverGoods = 32,
客户取消订单    CustomerCanceled = 64,
供货商取消订单     SupplierCancelded = 128

----------------调错按键

F5开始调试,跳到下一个断点
F10逐行调试
F11逐语句调试,可以跳到方法内部
Shift+F11跳出方法体
F8浏览器开始调试

这是我们常用的一些调错按键

原文地址:https://www.cnblogs.com/ShenJA/p/11153407.html