在C++标准模板库(STL)中,vector容器是最常用、最基础的动态数组实现。无论你是刚接触编程的新手,还是正在学习C++的开发者,掌握C++ vector容器的使用方法都是必不可少的一步。
std::vector 是C++ STL(标准模板库)中的一个序列容器,它封装了动态大小的数组。与普通数组不同,vector可以在运行时自动调整其大小,无需手动管理内存。
简单来说,你可以把vector理解为“会自动扩容的数组”。这使得它非常适合处理元素数量不确定的场景。
要使用vector,首先需要包含头文件:
#include <vector>#include <iostream>using namespace std;
// 创建一个空的int类型vectorvector<int> v1;// 创建一个包含5个元素,每个元素初始化为10的vectorvector<int> v2(5, 10);// 使用初始化列表创建vector(C++11及以上)vector<int> v3 = {1, 2, 3, 4, 5}; vector<int> v;v.push_back(10); // 在末尾添加元素v.push_back(20);v.push_back(30);// 输出:10 20 30cout << v[0] << " " << v[1] << " " << v[2] << endl;v.pop_back(); // 删除最后一个元素
vector<int> v = {10, 20, 30};// 方法1:使用下标访问(注意:不进行越界检查)cout << v[0] << endl;// 方法2:使用at()方法(会进行越界检查,更安全)cout << v.at(1) << endl;// 获取第一个和最后一个元素cout << v.front() << endl; // 第一个cout << v.back() << endl; // 最后一个 vector<int> v = {1, 2, 3};cout << "当前元素个数: " << v.size() << endl; // 输出 3cout << "当前容量: " << v.capacity() << endl; // 可能输出 3 或更大v.reserve(10); // 预留至少10个元素的空间cout << "预留后容量: " << v.capacity() << endl; // 至少为10 下面是一个使用vector存储学生考试成绩并计算平均分的小程序:
#include <vector>#include <iostream>#include <numeric> // for accumulateusing namespace std;int main() { vector<double> scores = {85.5, 90.0, 78.5, 92.0, 88.0}; cout << "共有 " << scores.size() << " 位学生的成绩:\n"; for (double s : scores) { cout << s << " "; } cout << endl; double sum = accumulate(scores.begin(), scores.end(), 0.0); double avg = sum / scores.size(); cout << "平均分: " << avg << endl; return 0;} 通过本教程,你已经掌握了C++ vector容器的基础用法。作为C++ STL vector中最核心的容器之一,vector因其易用性和高效性被广泛应用于各种项目中。
记住几个关键点:
push_back() 添加元素size() 获取当前元素数量at() 更安全希望这篇vector基础教程能帮助你顺利开启C++ STL的学习之旅!多加练习,你会越来越熟练的。
关键词回顾:C++ vector容器、vector基础教程、C++ STL vector、新手学vector
本文由主机测评网于2025-12-08发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/2025124764.html