
2个回答
展开全部
你不会是在循环里用erase吧。
这样的原先的迭代器就失效了。
你说的delete是什么?
同时erase是返回下一个迭代器。因为要用
map stl
for(it = stl.begin(); it != stl.end())
{
if(),,
it = stl.erase(it );
else
it ++
// 或者用 st.erase(it++)
}
这样的原先的迭代器就失效了。
你说的delete是什么?
同时erase是返回下一个迭代器。因为要用
map stl
for(it = stl.begin(); it != stl.end())
{
if(),,
it = stl.erase(it );
else
it ++
// 或者用 st.erase(it++)
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询