#include <cstdlib>#include <iostream>#include <vector>
using namespace std;
int main(int argc, char *argv[]){ vector<int> c; cout<<"INITIAL"<<endl; cout<<"Size="<<c.size()<<endl; cout<<"Capacity"<<c.capacity()<<endl; cout<<"AFTER"<<endl; for(int i=0;i<21;i++) { c.push_back(i); cout<<"Size="<<c.size()<<endl; cout<<"Capacity="<<c.capacity()<<endl; } system("PAUSE"); return EXIT_SUCCESS;}
上述代码的输出结果为:
INITIAL
Size=0 Capacity=0
AFTER
Size=1 Capacity=1
Size=2 Capacity=2
Size=3 Capacity=4
Size=4 Capacity=4
Size=5 Capacity=8
.......
Size=10 Capacity=16
......
Size=20 Capacity=32
由此可以看出C++中vector内存的分配