Set*_*gie 7 c++ iterator list std
std::list如果只有指向要删除的元素的迭代器,是否可以从中删除元素?我有大量的函数需要迭代器来列出元素,并且必须将拥有权传递list给它们中的每一个都是非常不便的.
std::list
list
Nod*_*ode 3
编辑:
你不能使用单个迭代器。
如果您有开始/结束迭代器,则可以使用该std::remove算法将要删除的所有元素移动到末尾,并在稍后删除它们。
std::remove
如果您不这样做,或者上述内容对于您当前的设计不可行,我建议您更改您的功能以采用std::pair<std::list<T>, std::list<T>::iterator>类似的方法。
std::pair<std::list<T>, std::list<T>::iterator>
归档时间:
14 年,4 月 前
查看次数:
1165 次
最近记录: