C++ vector容器详解:接口、用法与实例 | SEO优化
C++ vector容器详解:接口、用法与实例
std::vector 是 C++ 标准库中一个强大的容器,提供动态数组的功能,可以方便地存储和管理元素。本文将详细介绍 std::vector 容器的常用接口、用法以及实例代码,帮助你快速掌握其使用技巧。
1. 构造函数和析构函数
vector():默认构造函数,创建一个空的std::vector。vector(size_type count, const T& value):创建一个包含count个值为value的元素的std::vector。vector(const vector& other):拷贝构造函数,通过复制另一个std::vector创建一个新的std::vector。~vector():析构函数,销毁std::vector对象及其元素。
2. 容量操作
size():返回std::vector中元素的个数。empty():检查std::vector是否为空。resize(size_type count):重新调整std::vector的大小,将其设置为count个元素。reserve(size_type count):预留count个元素的空间,以提高插入元素的效率。shrink_to_fit():释放多余的内存空间,将容量调整为与大小相等。
3. 访问元素
operator[]:使用下标操作符访问std::vector中的元素。at(size_type pos):访问指定位置pos的元素,并进行边界检查。front():返回第一个元素的引用。back():返回最后一个元素的引用。data():返回指向std::vector中第一个元素的指针。
4. 修改容器
push_back(const T& value):在std::vector的末尾插入一个元素。pop_back():删除std::vector的最后一个元素。insert(iterator pos, const T& value):在指定位置插入一个元素。erase(iterator pos):删除指定位置的元素。clear():清空std::vector中的所有元素。
5. 迭代器相关
begin():返回指向std::vector中第一个元素的迭代器。end():返回指向std::vector中最后一个元素的下一个位置的迭代器。rbegin():返回指向std::vector中最后一个元素的逆向迭代器。rend():返回指向std::vector中第一个元素的前一个位置的逆向迭代器。
实例代码
#include <iostream>
#include <vector>
int main() {
// 创建一个空的 vector
std::vector<int> numbers;
// 添加元素
numbers.push_back(10);
numbers.push_back(20);
numbers.push_back(30);
// 访问元素
std::cout << '第一个元素:' << numbers[0] << std::endl;
std::cout << '最后一个元素:' << numbers.back() << std::endl;
// 迭代器遍历
std::cout << '所有元素:';
for (auto it = numbers.begin(); it != numbers.end(); ++it) {
std::cout << *it << ' ';
}
std::cout << std::endl;
return 0;
}
总结
std::vector 是 C++ 中一个非常实用的容器,提供了丰富的接口和灵活的操作方式。通过学习本文,相信你已经对 std::vector 容器有了更深入的了解,并能够在实际编程中灵活运用。
原文地址: https://www.cveoy.top/t/topic/r3A 著作权归作者所有。请勿转载和采集!