for(i = 0; i < (vertical_num*4); i+=4)
{
for(j = (i+4); j < (vertical_num*4); j+=4)
{
if(vertical[i] == vertical[j] && vertical[i+1] == vertical[j+1])
{
vertical.erase(&vertical[j]);
vertical.erase(&vertical[j+1]);
vertical.erase(&vertical[j+2]);
vertical.erase(&vertical[j+3]);
vertical_num--;
}
else
break;
}
}
问题:if内的erase一直是错误的,请问我这样要如何删除
请问一定要透过vector<int>::iterator iter = vertical.begin(); vertical.erase(iter); 才行吗??不能直接写?
请问有没有别的方法
本回答被网友采纳