zoukankan      html  css  js  c++  java
  • vector的capacity增长方式

         vector的capacity()调用返回vector中最大能够存储的元素个数,也即在下一次需要扩充容量之前能容纳的元素个数。reserve会使容器在必要的时候增长,以便容纳制指定数目的元素。

    #include <iostream>
    #include <vector>
    using namespace std;
    int main()
    {
        vector<int> u;
        cout << "Initial capaciry of u: " << u.capacity() << "
    ";
        for(int i = 0; i < 40; ++i)
        {
            u.push_back(i);
            cout<<"size is "<<u.size()<<" ";
            cout<<"Now capacity is :" << u.capacity() << "
    ";
        }
        return 0;
    }

    运行环境:win7 32bit codeblocks

    Initial capaciry of u: 0
    size is 1 Now capacity is :1
    size is 2 Now capacity is :2
    size is 3 Now capacity is :4
    size is 4 Now capacity is :4
    size is 5 Now capacity is :8
    size is 6 Now capacity is :8
    size is 7 Now capacity is :8
    size is 8 Now capacity is :8
    size is 9 Now capacity is :16
    size is 10 Now capacity is :16
    size is 11 Now capacity is :16
    size is 12 Now capacity is :16
    size is 13 Now capacity is :16
    size is 14 Now capacity is :16
    size is 15 Now capacity is :16
    size is 16 Now capacity is :16
    size is 17 Now capacity is :32
    size is 18 Now capacity is :32
    size is 19 Now capacity is :32
    size is 20 Now capacity is :32
    size is 21 Now capacity is :32
    size is 22 Now capacity is :32
    size is 23 Now capacity is :32
    size is 24 Now capacity is :32
    size is 25 Now capacity is :32
    size is 26 Now capacity is :32
    size is 27 Now capacity is :32
    size is 28 Now capacity is :32
    size is 29 Now capacity is :32
    size is 30 Now capacity is :32
    size is 31 Now capacity is :32
    size is 32 Now capacity is :32
    size is 33 Now capacity is :64
    size is 34 Now capacity is :64
    size is 35 Now capacity is :64
    size is 36 Now capacity is :64
    size is 37 Now capacity is :64
    size is 38 Now capacity is :64
    size is 39 Now capacity is :64
    size is 40 Now capacity is :64
  • 相关阅读:
    es从aws迁移阿里云问题总结
    MySQL & Canal流程&架构梳理
    这么优雅的Java ORM没见过吧!
    Five86-1靶机渗透实战
    从信息泄露到域控
    禁用浏览器在触摸屏上双指缩放的功能
    使用java动态字节码技术简单实现arthas的trace功能。
    apisix网关-构建docker镜像构建及插件化开发
    query扩展方法汇总
    为什么.NET Standard 仍然有意义?
  • 原文地址:https://www.cnblogs.com/XDJjy/p/3900026.html
Copyright © 2011-2022 走看看