位运算的使用例子
class Data
{
public:enum Permission{allowSelect = 1 << 0,allowUpdate = 1 << 1,allowInsert = 1 << 2,allowDelete = 1 << 3};
public:Data():flag(0){};~Data(){};/*添加某權限*/void enable(int permission){flag |= permission;}/*刪除某權限*/void disable(int permission){flag ^= permission;}/*是否擁有某些權限*/bool isAllow(int permission){return (flag&permission) == permission;}/*是否沒有某些權限*/bool isNotAllow(int permission){return (flag&permission) == 0;}/*是否公擁有某些權限*/bool isOnlyAllow(int permission){return flag == permission;}int getPermission() const{return flag;}void setPermission(int permission){flag = permission;}private:int flag;
};int main()
{Data d;//設置權限d.setPermission(Data::allowSelect|Data::allowUpdate);//是否擁有insert、delete權限d.isAllow(Data::allowInsert|Data::allowDelete);return 0;
}
?
轉載于:https://www.cnblogs.com/quehualin/p/9355376.html
總結
- 上一篇: mysql基本命令入门
- 下一篇: CentOS Vi编辑器