C++ STL的merge函数越界

小白想问问大神,用merge函数时一直报错,说iterator越界
代码如下:
#include
#include
#include
#include
using namespace std;

void display(vector &v)
{
for (vector::iterator it = v.begin(); it != v.end();++it)
{
cout<<*it<<endl;
}
cout<<endl;
}

int main()
{
vector v1,v2,v3;
for (int i =0; i<=2 ;++i)
{
v1.push_back(i);
}
for (int i =3; i<=7 ;++i)
{
v2.push_back(i);
}
for (int i =8; i<=10 ;++i)
{
v3.push_back(i);
}
merge(v1.begin(),v1.end(),v2.begin(),v2.end(),v3.begin());
display(v3);
system("pause");
return 0;
}

谢谢大神

查看全部
qq_34891390
qq_34891390
2016/05/05 11:58
  • 点赞
  • 收藏
  • 回答
    私信

1个回复