std::vector 是 C++ 标准库中的一个动态数组容器,提供了丰富的接口来管理容量、插入、删除和访问元素。以下是对你提到的接口的详细说明和使用示例:
1. 容量相关接口
-
capacity(): 返回当前vector分配的存储空间大小(以元素数量计),即在不重新分配内存的情况下可以容纳的元素数量。std::vector<int> vec; vec.reserve(100); // 预留 100 个元素的空间 std::cout << "Capacity: " << vec.capacity() << std::endl; // 输出: Capacity: 100 -
reserve(size_type n): 预留至少能容纳n个元素的内存空间。如果n大于当前容量,vector会重新分配内存以增加容量。std::vector<int> vec; vec.reserve(100); // 预留 100 个元素的空间 -
shrink_to_fit(): 请求移除未使用的容量,使capacity()等于size()。这个请求是非强制的,具体实现可能会忽略。std::vector<int> vec(100); vec.resize(10); // 缩小 size 到 10 vec.shrink_to_fit(); // 请求缩小容量 std::cout << "Capacity after shrink: " << vec.capacity() << std::endl; // 输出: Capacity after shrink: 10
2. 附加元素接口
-
push_back(const T& value): 在vector的末尾添加一个元素。std::vector<int> vec; vec.

最低0.47元/天 解锁文章
678

被折叠的 条评论
为什么被折叠?



