再加一个管理员模式
时间: 2023-07-07 19:17:43 浏览: 63
好的,这里给出一个带管理员模式的快递管理系统代码,管理员模式需要输入密码才能进入,管理员可以查看所有快递信息:
```c++
#include <iostream>
#include <vector>
#include <string>
using namespace std;
// 定义快递结构体
struct Express {
string id; // 快递单号
string name; // 收件人姓名
string phone; // 收件人电话号码
string address; // 收件人地址
};
// 定义快递管理系统类
class ExpressManager {
public:
// 添加快递
void addExpress() {
string id, name, phone, address;
cout << "请输入快递单号:";
cin >> id;
cout << "请输入收件人姓名:";
cin >> name;
cout << "请输入收件人电话号码:";
cin >> phone;
cout << "请输入收件人地址:";
cin >> address;
Express express = {id, name, phone, address};
expresses.push_back(express);
cout << "添加快递成功!" << endl;
}
// 查询快递
void queryExpress() {
string id;
cout << "请输入要查询的快递单号:";
cin >> id;
for (auto express : expresses) {
if (express.id == id) {
cout << "快递单号:" << express.id << endl;
cout << "收件人姓名:" << express.name << endl;
cout << "收件人电话号码:" << express.phone << endl;
cout << "收件人地址:" << express.address << endl;
return;
}
}
cout << "未找到该快递单号的快递!" << endl;
}
// 删除快递
void deleteExpress() {
string id;
cout << "请输入要删除的快递单号:";
cin >> id;
for (auto iter = expresses.begin(); iter != expresses.end(); iter++) {
if (iter->id == id) {
expresses.erase(iter);
cout << "删除快递成功!" << endl;
return;
}
}
cout << "未找到该快递单号的快递!" << endl;
}
// 管理员模式
void adminMode() {
string password;
cout << "请输入管理员密码:";
cin >> password;
if (password == "123456") {
cout << "快递列表:" << endl;
for (auto express : expresses) {
cout << "快递单号:" << express.id << endl;
cout << "收件人姓名:" << express.name << endl;
cout << "收件人电话号码:" << express.phone << endl;
cout << "收件人地址:" << express.address << endl;
cout << endl;
}
} else {
cout << "管理员密码错误!" << endl;
}
}
private:
vector<Express> expresses; // 快递列表
};
int main() {
ExpressManager expressManager;
int choice = 0;
while (true) {
cout << "请选择操作:1.添加快递 2.查询快递 3.删除快递 4.管理员模式 5.退出" << endl;
cin >> choice;
switch (choice) {
case 1:
expressManager.addExpress();
break;
case 2:
expressManager.queryExpress();
break;
case 3:
expressManager.deleteExpress();
break;
case 4:
expressManager.adminMode();
break;
case 5:
cout << "谢谢使用!" << endl;
return 0;
default:
cout << "请重新选择操作!" << endl;
break;
}
}
return 0;
}
```
这个代码相较于之前的代码,增加了一个管理员模式,密码是123456,管理员可以查看所有的快递信息。