C++通讯录程序开发 vector容器存储联系人

使用vector存储联系人信息可动态管理数据,通过结构体封装姓名、电话等字段,实现添加、显示、查找、删除功能,代码简洁且易扩展,适合中小型通讯录程序开发。

c++通讯录程序开发 vector容器存储联系人

用C++开发一个通讯录程序,使用

vector

容器来存储联系人信息是一种常见且高效的做法。它能动态管理联系人数量,避免固定数组的大小限制。下面是一个结构清晰、功能实用的通讯录程序实现思路和代码示例。

联系人结构设计

每个联系人包含基本信息,如姓名、电话、性别、年龄、地址等。使用

struct

来封装这些数据。

struct Person {    string name;    string phone;    string sex;    int age;    string address;    Person(string n, string p, string s, int a, string addr)        : name(n), phone(p), sex(s), age(a), address(addr) {}};

使用vector存储联系人

vector

作为主存储容器,支持动态增删查改。

vector contacts;

常用操作包括:

立即学习“C++免费学习笔记(深入)”;

添加联系人:使用

push_back()

插入新对象 遍历联系人:通过下标或迭代器访问 删除联系人:根据索引或姓名查找后用

erase()

移除 查找联系人:遍历匹配姓名或电话

核心功能实现示例

以下是几个关键功能的简要实现:

添加联系人

void addPerson(vector& contacts) {    string name, phone, sex, address;    int age;    cout <> name;    cout <> phone;    cout <> sex;    cout <> age;    cout <> address;    contacts.push_back(Person(name, phone, sex, age, address));    cout << "添加成功!n";}

显示所有联系人

void showAll(const vector& contacts) {    if (contacts.empty()) {        cout << "通讯录为空。n";        return;    }    for (const auto& p : contacts) {        cout << "姓名:" << p.name << " 电话:" << p.phone             << " 性别:" << p.sex << " 年龄:" << p.age             << " 地址:" << p.address << "n";    }}

按姓名查找

void findPerson(const vector& contacts) {    string name;    cout <> name;    for (const auto& p : contacts) {        if (p.name == name) {            cout << "找到: " << p.name << " " << p.phone << "n";            return;        }    }    cout << "未找到该联系人。n";}

删除联系人

void deletePerson(vector& contacts) {    string name;    cout <> name;    for (auto it = contacts.begin(); it != contacts.end(); ++it) {        if (it->name == name) {            contacts.erase(it);            cout << "删除成功!n";            return;        }    }    cout << "未找到该联系人。n";}

基本上就这些。通过

vector

管理联系人,代码简洁,易于扩展。你可以在此基础上加入文件读写(保存到txt或bin)、排序、修改功能,使程序更完整。C++标准库

vector

自动处理内存,避免手动管理指针,适合初学者和中小型项目。

以上就是C++通讯录程序开发 vector容器存储联系人的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1472701.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月18日 19:49:59
下一篇 2025年12月18日 19:50:14

相关推荐

发表回复

登录后才能评论
关注微信