#13978. [GESP202609 三级 C++] 第 10 题
[GESP202609 三级 C++] 第 10 题
下面的程序是位掩码技术实现权限的组合管理。首先定义四个权限常量,分别对应读、写、修改、删除, 每个权限占用整数的一个独立二进制位。初始化权限掩码 mask 为 0 ,代表没有任何权限。如果想实现如下的操 作:添加读权限;添加写权限;清除读权限,其他位不变;添加删除权限。则横线处应该填入的是( )。
#include <iostream>
using namespace std;
int main() {
const int READ = 1 << 0;
const int WRITE = 1 << 1;
const int MODIFY = 1 << 2;
const int DELETE_ = 1 << 3;
int mask = 0;
__________________________
return 0;
}
{{ select(1) }}
-
mask = mask | READ; mask = mask | WRITE; mask = mask & (~READ); mask = mask | DELETE_; -
mask = mask & READ; mask = mask & WRITE; mask = mask | (~READ); mask = mask & DELETE_; -
mask = mask | READ; mask = mask & WRITE; mask = mask & (~READ); mask = mask | DELETE_; -
mask = mask | READ; mask = mask | WRITE; mask = mask | (~READ); mask = mask | DELETE_;