C++设计一个联系人类(包含姓名、性别、电话号码、公司名称、备注等信息),创建一个联系人列表,要求用deque容器完成, 并能动态添加联系人、通过姓名查找到联系人信息并显示电话号码。
时间: 2024-01-12 19:05:13 浏览: 94
基于C++开发的通讯录
下面是一个示例代码,展示如何在C++中设计一个联系人类,使用deque容器存储联系人信息,并实现动态添加联系人和通过姓名查找联系人信息的功能:
```cpp
#include <iostream>
#include <deque>
#include <string>
class Contact {
public:
std::string name;
std::string gender;
std::string phoneNumber;
std::string companyName;
std::string remark;
Contact(const std::string& name, const std::string& gender, const std::string& phoneNumber, const std::string& companyName, const std::string& remark)
: name(name), gender(gender), phoneNumber(phoneNumber), companyName(companyName), remark(remark) {}
};
int main() {
std::deque<Contact> contacts;
// 添加联系人
contacts.push_back(Contact("Alice", "Female", "1234567890", "Company A", "Friend"));
contacts.push_back(Contact("Bob", "Male", "9876543210", "Company B", "Colleague"));
contacts.push_back(Contact("Charlie", "Male", "2345678901", "Company C", "Neighbor"));
// 通过姓名查找联系人信息并显示电话号码
std::string searchName = "Bob";
bool found = false;
for (const Contact& contact : contacts) {
if (contact.name == searchName) {
std::cout << "Name: " << contact.name << ", Phone Number: " << contact.phoneNumber << std::endl;
found = true;
break;
}
}
if (!found) {
std::cout << "Contact not found!" << std::endl;
}
return 0;
}
```
这段代码定义了一个`Contact`类,包含联系人的姓名、性别、电话号码、公司名称和备注等信息。在`main`函数中,创建一个`std::deque<Contact>`容器,用于存储联系人信息。然后,使用`push_back`函数向容器中添加联系人。
接下来,通过姓名查找联系人信息并显示电话号码。在示例代码中,我们设置了要查找的姓名为"Bob",遍历容器中的每个联系人对象,如果找到了匹配的姓名,就输出联系人的姓名和电话号码,并将`found`标志设置为`true`。如果未找到匹配的联系人,则输出"Contact not found!"。
希望这个示例对你有帮助!如果有任何疑问,请随时提出。
阅读全文