【发布时间】:2014-10-23 09:11:32
【问题描述】:
在这样的 for 循环中使用自动变量时,有没有办法擦除特定元素?
for(auto a: m_Connections)
{
if(something)
{
//Erase this element
}
}
我知道我可以说
for(auto it=m_map.begin() ...
或
for(map<int,int>::iterator it=m_map.begin() ...
并手动增加迭代器(和擦除),但如果我能用更少的代码行来完成它,我会更开心。
谢谢!
【问题讨论】:
-
擦除是什么意思?
-
m_Connections.erase(it);在“其他示例”中。