首页 > 编程语言 > 详细

Enum中[Flags]特性

时间:2021-06-25 17:10:54      阅读:9      评论:0      收藏:0      [点我收藏+]

C#中Enum有关[Flags]特性的作用以及用法:

[Flags]常用于做权限管理、位运算

[Flags]
enum Operation
{
  insert = 0,   //00001
  delete = 1,  //00010
  select = 2,  //00100
  update = 4,   //01000
  other = 8    //10000
}

|:加法
Operation.update | Operation.other
01000 | 10000 = 11000

 

&:作比较
Operation.update & Operation.other;
01000 & 10000 = 00000

 

~:非
~Operation.update
~01000 =10111

 

&~:减法
Operation.update & ~ Operation.other;
01000 & ~ 10000 = 00000
01000 & 01111 = 01000

 

HasFlag的作用:
判断枚举值的包含关系
bool isflag = o.HasFlag(Operation.update);

 

Enum中[Flags]特性

原文:https://www.cnblogs.com/WoodLeaf/p/14931157.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!