我想检查一个向量,如果它的元素同时具有整数 A 和 B,删除它们之间的元素并复制到另一个向量。例如,有两个向量;vector<> path
和vector<> v1
Path v1
---A***B## ---AB##
所以任务是删除 A 和 B 之间的元素,这是一个 C++ 代码,但不幸的是它不起作用。有什么想法吗?
vector< > Path,v1;
vector<int>::iterator it2,it3;
int A,B;
it2=find(Path.begin(), Path.end(), A) ;
it3=find(Path.begin(), Path.end(), B) ;
vector<int> v1(Path.begin(),Path.end());
if (it2 != Path.end() && it3 != Path.end())
{
if(it2<it3)
{
v1.erase(it2+1,it3);
}
else
{
v1.erase(it3+1,it2);
}
}