上次的文章里我讲了如何设置权限
还没看的可以在这里看
这次我将最终完善的代码分享给大家
快来看看吧
#include<iostream> // 引入C++标准输入输出库
using namespace std; // 使用标准命名空间,以便直接使用cout、cin等
// 全局变量
int a = 1; // 初始值设为1
static bool usability = false; // 控制用户是否可以修改a(静态变量,仅在本文件内可见)
// 公开函数,用于设置usability
void setUsability(bool choice) {
usability = choice; // 设置usability的值
}
void change() {
int newInput; // 用于存储用户想要设置的新a值
cout << "请输入要修改的数值(或者按其他键取消):" << endl;
cin >> newInput; // 从标准输入读取用户输入的整数
if (usability) { // 如果用户有权限
a = newInput; // 修改全局变量a
cout << "修改成功!!当前a值:" << a << endl;
} else {
cout << "你当前无权限修改!!" << endl;
}
}
int main() {
int userChoice; // 用于存储用户选择
cout << "当前a值:" << a << endl << endl; // 输出全局变量a的值
cout << "1.修改数值" << endl; // 输出用户选择
// 通过公开函数设置usability
setUsability(true); // 赋予用户修改权限
cin >> userChoice; // 读取用户的选择
if (userChoice == 1) { // 如果用户选择修改数值
change(); // 调用change函数修改a的值
}
setUsability(false); // 取消用户修改权限
cout << "你的修改权限已被关闭,后续修改无效" << endl; // 通知用户
cin >> userChoice; // 再次读取用户的选择
if (userChoice == 1) { // 如果用户仍然选择修改数值
change(); // 调用change函数(但由于usability为false,修改将不会成功)
}
cout << "最终a值:" << a << endl; // 输出修改后的全局变量a的值
return 0; // 程序正常退出
}