列举一些关于vector的常识: 1)包含头文件#include <vector>2)如果预先给vector分配空间,很简单: vector <type> v(10); 当然也可以: vector <type> v; v.reserve(10);3)遍历vector: vector <type> v; typedef vector<type>::iterator vitr; vitr end=v.end(); vitr itr; for(itr=v.begin();itr!=end;itr++) { printf("……",*itr); } 还有一个比较简单的方法,不过需要重写print函数: void print(type a) { printf("a"); } for_each(v.begin(),v.end(),print); 目前不知道这个函数的效率如何。4)vector元素的删除: type e;//想要删除的元素 vector<type> v; vector<type>::iterator itr=find(v.begin(),v.end(),e); if(itr!=v.end()) { v.erase(itr); } 我在机器上试验了一下,测试调用erase()函数前后,v的size变化了,说明对于vector来说,元素确实相 当于删除了。(但是请注意,这样的删除方法不会真正删除元素,只是将元素做了移动,这是网上某大牛 说的,不知道移动到哪了~) vector删除元素的时间复杂度是比较高的,如果要频繁删除的话尽量还是不要用vector了~5)vector判空: 尽量使用v.empty()来判断vector是否为空,而不要用v.size()是否为0来判断,因为empty()是常数时间 的,而v.size()不是常数时间。以上是一些非常基本的vector用法,对于平常的应用应该没有问题了,深入的就不讲了,网搜一片啊!~