c++vector中的预留空间

函数原型:
reserve(int len); //容器预留len个元素长度,预留位置不初始化,元素不可访问。

简单来说就是直接给capacity赋值,预留位置的时候,原有的元素不会改变,因为如果数据量较多,那么在运行时会多次重开辟内存,比较耗时,所以最好的办法就是在开始时就直接预留足够的内存

统计开辟空间的次数

  int num = 0;
  int *p = NULL;
  vector<int> v;
  for (int i = 0; i < 10000; i++)
  {
    v.push_back(i);
    if(p != &v[0])
    {
   p = &v[0];
      num++;
    }
  }

a

posted @   纸包鱼  阅读(178)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
· Manus的开源复刻OpenManus初探
点击右上角即可分享
微信分享提示