首先,我们定义一个联系人类(Contact)。

#include <iostream>
#include <string>
#include <vector>
class Contact {
public:
std::string name;
std::string phoneNumber;
Contact(const std::string& name, const std::string& phoneNumber)
: name(name), phoneNumber(phoneNumber) {}
};我们创建一个电话簿管理系统类(PhoneBook):
class PhoneBook {
private:
std::vector<Contact> contacts;
public:
void addContact(const Contact& contact) {
contacts.push_back(contact);
}
bool findContact(const std::string& name) {
for (const auto& contact : contacts) {
if (contact.name == name) {
std::cout << "找到联系人: " << contact.name << ", 电话号码: " << contact.phoneNumber << std::endl;
return true;
}
}
std::cout << "未找到联系人" << std::endl;
return false;
}
void deleteContact(const std::string& name) {
for (auto it = contacts.begin(); it != contacts.end(); ++it) {
if (it->name == name) {
contacts.erase(it);
return;
}
}
std::cout << "未找到联系人" << std::endl;
}
};我们在主函数中实现电话簿管理系统的交互功能:

int main() {
PhoneBook phoneBook;
bool keepRunning = true;
while (keepRunning) {
std::cout << "请选择操作:n";
std::cout << "1. 添加联系人n";
std::cout << "2. 查找联系人n";
std::cout << "3. 删除联系人n";
std::cout << "4. 退出n";
int choice;
std::cin >> choice;
switch (choice) {
case 1: {
std::string name, phoneNumber;
std::cout << "请输入联系人姓名和电话号码(用空格分隔):";
std::cin >> name >> phoneNumber;
phoneBook.addContact(Contact(name, phoneNumber));
break;
}
case 2: {
std::string name;
std::cout << "请输入要查找的联系人姓名:";
std::cin >> name;
phoneBook.findContact(name);
break;
}
case 3: {
std::string name;
std::cout << "请输入要删除的联系人姓名:";
std::cin >> name;
phoneBook.deleteContact(name);
break;
}
case 4: {
keepRunning = false;
break;
}
default: {
std::cout << "无效的选择,请重新输入。" << std::endl;
break;
}
}
}
return 0;
}```




