用c++stl写一个管理系统
时间: 2023-11-10 15:06:33 浏览: 104
c++编写的管理系统
好的,下面我为您提供一个简单的基于 C++ STL 的管理系统示例。
本系统是一个简单的学生管理系统,可以添加、删除和查询学生信息。
首先定义一个学生类:
```cpp
#include <string>
class Student {
public:
Student(std::string name, int age, std::string id) : name_(name), age_(age), id_(id) {}
std::string GetName() const { return name_; }
int GetAge() const { return age_; }
std::string GetId() const { return id_; }
private:
std::string name_;
int age_;
std::string id_;
};
```
然后定义一个管理系统类,用 vector 容器来存储学生信息:
```cpp
#include <vector>
#include <string>
#include "student.h"
class StudentManager {
public:
void AddStudent(const Student& student) {
students_.push_back(student);
}
void DeleteStudent(const std::string& id) {
for (auto it = students_.begin(); it != students_.end(); ++it) {
if (it->GetId() == id) {
students_.erase(it);
break;
}
}
}
int GetStudentCount() const {
return students_.size();
}
const Student& GetStudentById(const std::string& id) const {
for (const auto& student : students_) {
if (student.GetId() == id) {
return student;
}
}
throw std::runtime_error("Student not found");
}
private:
std::vector<Student> students_;
};
```
在 main 函数中,我们可以使用上面定义的类来进行学生信息的管理:
```cpp
#include <iostream>
#include "student_manager.h"
int main() {
StudentManager manager;
// 添加学生信息
manager.AddStudent(Student("张三", 18, "001"));
manager.AddStudent(Student("李四", 19, "002"));
manager.AddStudent(Student("王五", 20, "003"));
// 查询学生信息
std::cout << "总共有 " << manager.GetStudentCount() << " 个学生" << std::endl;
std::cout << "学号为 001 的学生姓名为 " << manager.GetStudentById("001").GetName() << std::endl;
// 删除学生信息
manager.DeleteStudent("002");
std::cout << "总共有 " << manager.GetStudentCount() << " 个学生" << std::endl;
return 0;
}
```
这是一个简单的管理系统示例,您可以根据实际需求进行修改和扩展。
阅读全文