C++vector容器-预留空间
生活随笔
收集整理的這篇文章主要介紹了
C++vector容器-预留空间
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
vector預留空間
功能描述:
減少vector在多態擴展容量時的擴展次數
函數原型:
reserve(int len);//容器預留len個元素長度,預留位置不初始化,元素不可訪問。
當我們往vector容器中push_back大量的數,vector就會開辟多次空間,如果我們最開始就告訴vector要預留多少空間,vector就不用開辟那么多次空間了
利用reserve預留空間
代碼如下:
#include <iostream> using namespace std; //vector預留空間 #include <vector>void test01() {vector<int >v;//利用reserve預留空間v.reserve(100000);int num = 0;//統計開辟次數int *p = NULL;for (int i = 0; i < 100000; i++) {v.push_back(i);if (p != &v[0]) {p = &v[0];num++;}}cout << "num = " << num << endl;}int main() {test01();return 0; }總結:
如果數據量較大,可以一開始利用reserve預留空間
總結
以上是生活随笔為你收集整理的C++vector容器-预留空间的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 肌肉劳损怎么恢复
- 下一篇: C++set容器-构造和赋值