c++ vector怎么初始化和添加元素_c++中vector容器的使用与扩展方法

C++中vector是STL的动态数组,需包含头文件;支持空初始化、指定大小、列表初始化等多种方式;常用push_back和emplace_back添加元素,insert插入元素;通过size()和capacity()获取大小与容量,reserve()预分配空间以提升性能。

c++ vector怎么初始化和添加元素_c++中vector容器的使用与扩展方法

在C++中,vector 是 STL 提供的动态数组容器,能自动管理内存,支持随机访问,并可动态扩展。使用 vector 前需包含头文件 。

vector 的初始化方式

vector 提供多种初始化方法,适用于不同场景:

空初始化:创建一个空 vector,后续可通过 push_back 添加元素。
std::vector vec; 指定大小:创建包含 n 个默认值的 vector。
std::vector vec(5); // 5 个 0 指定大小和初始值
std::vector vec(5, 10); // 5 个 10 用数组初始化
int arr[] = {1, 2, 3};
std::vector vec(arr, arr + 3); 用另一个 vector 初始化
std::vector vec1 = {1, 2, 3};
std::vector vec2(vec1); 列表初始化(C++11 起)
std::vector vec = {1, 2, 3, 4};

添加元素的方法

vector 支持多种方式添加元素,最常用的是 push_backinsert

push_back():在末尾添加一个元素。
vec.push_back(5); // 添加整数 5 emplace_back():直接在末尾构造元素,比 push_back 更高效(避免临时对象)。
vec.emplace_back(6); insert():在指定位置插入元素或一段元素。
vec.insert(vec.begin() + 1, 10); // 在索引 1 处插入 10
vec.insert(vec.end(), {7, 8, 9}); // 在末尾插入多个值

容量与扩展机制

vector 内部使用动态数组,当空间不足时会自动重新分配内存(通常是当前容量的两倍),并将原数据复制过去。

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

size():当前元素个数
vec.size(); capacity():当前分配的存储空间大小
vec.capacity(); reserve(n):预分配至少 n 个元素的空间,避免频繁扩容。
vec.reserve(100); resize(n):改变 vector 大小,若 n > size(),新增元素用默认值填充。
vec.resize(10);

基本上就这些。掌握初始化、添加元素和容量控制,就能高效使用 vector。注意频繁 push_back 时尽量提前 reserve,提升性能。

以上就是c++++ vector怎么初始化和添加元素_c++中vector容器的使用与扩展方法的详细内容,更多请关注创想鸟其它相关文章!

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月19日 07:51:15
下一篇 2025年12月19日 07:51:27

相关推荐

发表回复

登录后才能评论
关注微信