作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
这个枚举是如何分配的?每个的值(value)是多少?
public enum SiteRoles
{
User = 1 << 0,
Admin = 1 << 1,
Helpdesk = 1 << 2
}
这样赋值有什么用?
最佳答案
他们正在制作一个小旗帜。他们没有将值写为 1、2、4、8、16 等,而是将 1
值左移以将其乘以 2。有人可能会争辩说这样更容易阅读。
它允许对枚举值进行按位运算。
1 << 0 = 1 (binary 0001)
1 << 1 = 2 (binary 0010)
1 << 2 = 4 (binary 0100)
关于c# - 枚举分配看起来不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20244998/
我是一名优秀的程序员,十分优秀!