加两个 iter=f.end();就可以
VS2008的insert中参数好像都是const
iterator insert(const_iterator _Where, const _Ty& _Val)
{// insert _Val at _Where
size_type _Off = size() == 0 ? 0 : _Where - begin();
_Insert_n(_Where, (size_type)1, _Val);
return (begin() + _Off);
}
插入后不改变iterator,所以要重新iter=f.end();
难道vc6不同吗
#include
#include
#include "iterator"
#include "algorithm"
using namespace std;
void Display(vector
int main()
{
int Array[5]={1,2,3,4,5};
vector
vector
copy(Array,Array+5,back_inserter(f));
Display(f,"before change.");
f.push_back(6);
Display(f,"after push a number.");
iter=f.end();
f.insert(iter,7);
Display(f,"after insert seven.");
iter=f.end();
f.insert(iter,1,8);
Display(f,"after insert eight.");
int array[2]={9,10};
iter=f.end();
f.insert(iter,array,array+2);
Display(f,"after insert two numbers .");
vector
a=f.size();
cout<
bool b;b=f.empty();
return 0;
}
void Display(vector
{
cout<copy(a.begin(),a.end(),ostream_iterator
cout<
}
版本升级 内部程序出错
报什么错啊?直接复制粘贴在2010是不报编译错的。