谁能帮助一个无助stl新手,100分~!!
帮我看看这个函数的错误~谢谢
struct str_goods
{
int ID;
int Num;
};
list<str_goods> m_lstGoods;
void AddGoods( int id, int num )
{
class CheckIsExist{
public:
bool operator()(str_goods& goodRecord)
{
return goodRecord.ID==id;
}
};
list<str_goods>::iterator goodIterator=find_if(m_lstGoods.begin(),m_lstGoods.end(),CheckIsExist());
if (goodIterator==m_lstGoods.end())
{
str_goods good_temp={id,num};
m_lstGoods.push_back(good_temp);
}
else
{
(*goodIterator).Num=(*goodIterator).Num+num;
}
}