vector<type>c;创建一个空的vector容器。
vector<type> c1(c2);复制一个vector。
vector<type> c(n);创建一个vector,含有n个数据,数据均以缺省构造产生,即全0;
vector<type> c(n,elem)创建一个vector,含有n个elem的拷贝数据。
vector<type> c(beg,end)创建一个以[beg,end)区间的vector。
~vector<type>() 销毁所有数据,施放内存。
压缩一个臃肿的vector
很多时候大量的删除数据,或者通过使用reserver(),结果vector的空间远远大于实际的需要。所以需要压缩vector到它的实际大小。resize()能增加vector的大小。clear()仅仅移除容器内的数据,不能改变capacity()的大小,所以对vector进行压缩非常重要。
测试一下clear()函数:
复制代码//
// vector.cpp
// vector
//
// Created by scandy_yuan on 13-1-7.
// Copyright (c) 2013年 Sam. All rights reserved.
//
#include <iostream>
#include <vector>
using namespace std;
int main(int argc, const char * argv[])
{
// insert code here...
vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
vector<int>::iterator it;
cout << "clear before:" << " ";
for(it=v.begin();it!=v.end();it++){
cout << *it << "t";
}
cout << endl;
cout << "clear before capacity:" << v.capacity() << endl;
v.clear();
cout << "after clear:" << " ";
for(it=v.begin();it!=v.end();it++){
cout << *it << "t";
}
cout << endl;
cout << "after clear capacity:" << v.capacity() << endl;
return 0;
}










