C++使用vector实现通讯录程序

0 下载量 190 浏览量 更新于2024-08-29 收藏 60KB PDF 举报
"C++容器vector实现通讯录功能,利用C++标准库中的vector容器来存储通讯录中的联系人信息。作者通过创建一个包含姓名、电话等信息的数据结构`personMessage`,并将其作为元素存储在vector中。程序提供添加、修改、删除、显示和查找联系人的功能。" 在C++编程中,`std::vector`是一个动态数组容器,它能够容纳任意类型的对象。在这个通讯录示例中,`vector<personMessage>`被用来存储`personMessage`类型的实例,代表每个联系人的信息。`personMessage`通常会包含如姓名(string类型)、电话号码(string或char数组)等属性。 `vector`容器的优点在于它提供了动态大小调整的能力,可以在运行时增加或减少元素数量,而无需预先知道确切的大小。这使得在通讯录应用中添加、删除联系人变得非常方便。`vector`的另一个优点是其元素可以通过下标访问,就像操作普通数组一样,同时它还提供了迭代器支持,可以方便地遍历所有元素。 在`main()`函数中,`vector<personMessage> person`定义了存储联系人信息的容器。`vector<personMessage>::iterator it`是一个指向`person`中元素的迭代器,用于在遍历容器时访问每个`personMessage`对象。 程序通过`while`循环处理用户输入,用户可以选择执行不同的功能。例如,当用户输入'a'时,调用`add_person()`函数向通讯录中添加新联系人;输入'c'则调用`change_person()`修改已有联系人信息,等等。这些函数会根据用户输入的操作对`vector<personMessage>`进行相应的增、删、改操作。 在`head.h`文件中,通常会包含通讯录功能所需的一些通用头文件,以及自定义的数据结构和函数声明。虽然这部分内容没有给出,但可以想象它可能包含了`personMessage`结构体的定义和其他辅助函数的声明。 这个简单的通讯录系统展示了C++如何使用STL(标准模板库)中的`vector`容器来实现数据管理,同时也体现了面向对象编程的特性,通过封装联系人信息和操作方法,提高了代码的可读性和可维护性。