#include <iostream>
#include <vector>
int main() {
// 创建一个空的 vector
std::vector<int> vec;
// 打印当前容量和大小
std::cout << "Initial capacity: " << vec.capacity() << ", size: " << vec.size() << std::endl;
// 使用 reserve 预留空间,确保 vector 至少有 100 个元素的空间
vec.reserve(100);
// 再次打印容量和大小
std::cout << "After reserving 100 elements, capacity: " << vec.capacity() << ", size: " << vec.size() << std::endl;
// 向 vector 中添加元素
for (int i = 0; i < 50; ++i) {
vec.push_back(i);
}
// 最后打印容量和大小
std::cout << "After adding 50 elements, capacity: " << vec.capacity() << ", size: " << vec.size() << std::endl;
return 0;
}
std::vector
是 C++ 标准库中的动态数组类,可以根据需要自动调整其大小。reserve(n)
方法用于预先分配至少 n
个元素的空间。这不会改变 vector
的大小(即 size()
),但会改变其容量(即 capacity()
),从而避免在后续插入元素时频繁重新分配内存。vector
,然后调用 reserve(100)
来预留至少 100 个元素的空间。接着我们向 vector
中添加了 50 个元素,并展示了在不同阶段的容量和大小变化。上一篇:c++和c
下一篇:c++ 取整
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站