基于C++的人员管理系统设计
时间: 2023-08-03 22:03:34 浏览: 83
以下是一个简单的基于 C++ 的人员管理系统设计示例:
```c++
#include <iostream>
#include <string>
#include <vector>
using namespace std;
class Person
{
public:
Person(string name, int age, string gender, string id)
{
m_name = name;
m_age = age;
m_gender = gender;
m_id = id;
}
void PrintInfo()
{
cout << "姓名:" << m_name << endl;
cout << "年龄:" << m_age << endl;
cout << "性别:" << m_gender << endl;
cout << "身份证号:" << m_id << endl;
}
string GetName() { return m_name; }
string GetId() { return m_id; }
private:
string m_name;
int m_age;
string m_gender;
string m_id;
};
class PersonManager
{
public:
void AddPerson(Person person)
{
m_persons.push_back(person);
}
void RemovePerson(string name)
{
for (int i = 0; i < m_persons.size(); i++)
{
if (m_persons[i].GetName() == name)
{
m_persons.erase(m_persons.begin() + i);
break;
}
}
}
void PrintAll()
{
for (int i = 0; i < m_persons.size(); i++)
{
cout << "第" << i + 1 << "个人的信息:" << endl;
m_persons[i].PrintInfo();
cout << endl;
}
}
Person* FindPersonById(string id)
{
for (int i = 0; i < m_persons.size(); i++)
{
if (m_persons[i].GetId() == id)
{
return &m_persons[i];
}
}
return NULL;
}
private:
vector<Person> m_persons;
};
int main()
{
PersonManager personManager;
Person person1("张三", 20, "男", "123456789012345678");
Person person2("李四", 22, "女", "234567890123456789");
Person person3("王五", 25, "男", "345678901234567890");
personManager.AddPerson(person1);
personManager.AddPerson(person2);
personManager.AddPerson(person3);
cout << "添加三个人后,所有人的信息:" << endl;
personManager.PrintAll();
personManager.RemovePerson("李四");
cout << "删除李四后,所有人的信息:" << endl;
personManager.PrintAll();
Person* person = personManager.FindPersonById("345678901234567890");
if (person != NULL)
{
cout << "找到身份证号为345678901234567890的人,信息如下:" << endl;
person->PrintInfo();
}
else
{
cout << "未找到身份证号为345678901234567890的人" << endl;
}
return 0;
}
```
这个代码示例使用了两个类:`Person` 类和 `PersonManager` 类。`Person` 类表示一个人员,包含姓名、年龄、性别、身份证号等属性,并提供打印信息的方法。`PersonManager` 类表示人员管理系统,包含添加人员、删除人员、打印所有人员信息、根据身份证号查找人员等方法。
在主函数中,首先创建三个人员并添加到人员管理系统中,然后打印所有人员信息。接着删除其中一个人员并再次打印所有人员信息。最后根据身份证号查找人员并打印其信息。
需要注意的是,这个示例中只是一个非常简单的人员管理系统设计,实际应用中可能需要更多的功能和更完善的设计。
阅读全文