Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c++ vector reserve

作者:独夜无伴   发布日期:2025-08-07   浏览:46

#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++ 取整

大家都在看

c++闭包

c++单引号和双引号的区别

c++ 注释

c++如何判断素数

c++ orm框架

c++freopen怎么用

c++ 获取系统时间

c++进制转换函数

c++ vector 清空

c++ tcp

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站