list<int>listtwo;
listtwo.push_back(5);
listtwo.push_back(10);
listtwo.push_back(3);
listtwo.push_back(2);
listtwo.sort();
list<int>::iterator it1;
list<int>::iterator it2;
for (it1=listtwo.begin();it1!=listtwo.end();it1++)
{
if (*it1 ==5)
{
if (it1!=listtwo.begin())
{
it1--;
it2=it1;
it2++;
listtwo.erase(it2);
}
}
}
listtwo.push_back(5);
listtwo.push_back(10);
listtwo.push_back(3);
listtwo.push_back(2);
listtwo.sort();
list<int>::iterator it1;
list<int>::iterator it2;
for (it1=listtwo.begin();it1!=listtwo.end();it1++)
{
if (*it1 ==5)
{
if (it1!=listtwo.begin())
{
it1--;
it2=it1;
it2++;
listtwo.erase(it2);
}
}
}
设置两个游标,在找到元素之前一定要先保存好游标。比如先回到上一个外置,然后让临时变量++接着删除临时变量游标里的值。
或者用list.remove()这个方法来删除