Iterator找出原素后,请问如何删除(我是菜bird)
下面的pkls.erase的parameter应是position
我需要定义一个int去记录位置再传入去吗?
有其它更真接的办法吗?
//Remove the DLCX when the response 250 matching them
void removeDLCX(Pkl& pkl)
{
for(list <Pkl>::iterator p = pkls.begin();p != pkls.end(); ++p)
{
if(p->id == pkl.id)
{
if(pkl.ploss == "0")
{
cout << "Erasing the DLCX:" << pkl.id << endl;
// pkls.erase(p);
}
else
cout << "Find packet loss doesn't equals to 0" << endl;
}
}
}