次の状況を考慮してください。
using namespace std;
unordered_map<int, vector<A>> elements;
今、私はこの順序付けられていないマップを繰り返し処理しています:
for (auto it = elements.begin(); it != elements.end(); ++it)
ループ内で、elements
(現在の要素をit
指している要素とそれ以上の要素であり、必ずしも次の要素であるとは限りません!) のいくつかの要素からクラスターを形成しています。各要素は 1 つのクラスターの一部にすぎないため、それらをマップから削除してから、次の要素 (つまり、次のクラスターの構築) に進みたいと思います。
どうすればこれを行うことができ、正しい位置で反復を続行できますか?