std::vector<int> ints;
// ... fill ints with random values
for(std::vector<int>::iterator it = ints.begin(); it != ints.end(); )
{
if(*it < 10)
{
*it = ints.back();
ints.pop_back();
continue;
}
it++;
}
pop_back()
が呼び出されるit
と無効になるため、このコードは機能しません。しかし、 のイテレータの無効化について話しているドキュメントは見つかりませんstd::vector::pop_back()
。
それについてのリンクはありますか?