转载于:http://www.cnblogs.com/sycdirdir/archive/2010/06/01/1748891.html
用2的n次方标识单个的权限 如
0 无权限
1 可读(read)
2 可新增(insert)
4 可修改(update)
8 可删除(delete)
16 可审核
...
权限的组合
read +insert = 1+2=3
read +insert +delete = 1+2+8=11
read + update+delete =1+4+8=13
(value = 2的n次方)
增加权限
power = power | value
删除权限
power = power &~ value
btw: 可以一次增加或删除多个权限的组合
power = power | 13 同时增加 read + update+delete
power = power &~ 3 同时删除 read + insert
判断权限
可以同时判断单个权限,也可以同时判断多个组合权限
power & value = value

本文介绍了一种使用2的幂次来表示不同权限的方法,并详细解释了如何通过位运算进行权限的增删及判断。例如,可读权限为1,可新增为2,以此类推。通过位或和位与操作可以方便地实现权限的动态调整。
1743

被折叠的 条评论
为什么被折叠?



