C++如何实现简易通讯录功能

答案是使用C++中的结构体和vector实现通讯录,通过菜单操作添加、查看和查找联系人。定义Contact结构体存储姓名和电话,利用std::vector管理联系人列表,提供添加、显示全部和按姓名查找的功能,结合命令行交互完成简易通讯录的核心逻辑。

c++如何实现简易通讯录功能

C++实现一个简易通讯录功能,核心在于选择合适的数据结构来存储联系人信息,并围绕这个数据结构构建添加、查找、删除等基本操作。通常,我们会用到结构体(

struct

)来定义联系人,然后将其放入一个动态数组(如

std::vector

)中进行管理,再通过一个简单的命令行菜单来与用户交互。这听起来可能有点像搭积木,但每一步的选择都直接影响最终的可用性。

解决方案:在我看来,实现一个简易通讯录,最直观且易于上手的方式,就是定义一个

Contact

结构体来承载每个联系人的基本信息,比如姓名和电话号码。然后,我们用

std::vector

来存储这些联系人。这样一来,动态增删联系人就变得非常方便。

首先,我们定义联系人的结构:

#include #include #include #include  // For numeric_limits// 定义联系人结构struct Contact {    std::string name;    std::string phone;    // 构造函数,方便初始化    Contact(std::string n, std::string p) : name(std::move(n)), phone(std::move(p)) {}    // 打印联系人信息    void display() const {        std::cout << "姓名: " << name << ", 电话: " << phone << std::endl;    }};// 全局向量来存储所有联系人std::vector contacts;// 添加联系人void addContact() {    std::string name, phone;    std::cout << "请输入联系人姓名: ";    // 清除输入缓冲区,防止getline读取到之前的换行符    std::cin.ignore(std::numeric_limits::max(), 'n');    std::getline(std::cin, name);    std::cout << "请输入联系人电话: ";    std::getline(std::cin, phone);    contacts.emplace_back(name, phone);    std::cout << "联系人添加成功!" << std::endl;}// 查看所有联系人void viewContacts() {    if (contacts.empty()) {        std::cout << "通讯录为空。" << std::endl;        return;    }    std::cout << "n--- 通讯录列表 ---" << std::endl;    for (const auto& contact : contacts) {        contact.display();    }    std::cout << "------------------n" << std::endl;}// 查找联系人void searchContact() {    if (contacts.empty()) {        std::cout << "通讯录为空,无法查找。" << std::endl;        return;    }    std::string nameToSearch;    std::cout << "请输入要查找的联系人姓名: ";    std::cin.ignore(std::numeric_limits::max(), 'n');    std::getline(std::cin, nameToSearch);    bool found = false;    std::cout << "n--- 查找结果 ---" << std::endl;    for (const auto& contact : contacts) {        if (contact.name == nameToSearch) {            contact.display();            found = true;        }    }    if (!found) {        std::cout << "未找到姓名为 '" << nameToSearch << "' 的联系人。" << std::endl

以上就是C++如何实现简易通讯录功能的详细内容,更多请关注创想鸟其它相关文章!

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月19日 00:04:03
下一篇 2025年12月19日 00:04:16

相关推荐

发表回复

登录后才能评论
关注微信