用例:
#include <vector>
int main(int argc, char* argv[])
{
vector<int>v
v.push_back(5)
v.push_back(6)
v.insert(v.begin(), 4)
for (unsigned int i = 0i <v.size()++i)
{
printf("%d ", v[i])
}
system("pause")
return 0
}
v.insert(pos,elem)
v.insert(pos,n,elem)
在pos位置插入n个elem数据。无返回值。
v.insert(pos,beg,end)
在pos位置插入在[beg,end)区间的数据。无返回值。
1、可以从数组构造比如int a[] = { 0,1,3,5,6,4,2.... }
vector<int>v( a, a + sizeof( a ) / sizeof( a[0] ) )
2、动态添加就只有用push_back了
可以用resize预置vector的容量,这样就能免除push_back由于空间超过默认分配的定量内存时而重分配更大的一块新空间并把原内容重新拷过去所带来的效率损失,vector内部自动维护了一块定量的内存,这个空间可以用capacity()方法查看。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)