So entfernen Sie mehrere Artikel aus ungeordneten Karte während der Iteration über es?

Bitte betrachten Sie die folgende situation:

using namespace std;
unordered_map<int, vector<A>> elements;

Nun bin ich der Iteration über diese ungeordnete anzeigen:

for (auto it = elements.begin(); it != elements.end(); ++it)

Innerhalb der Schleife, ich bin Bildung von Clustern aus mehreren Elementen elements (das aktuelle, das it Punkte, und einige mehr, nicht unbedingt die nächsten in der Reihe!). Weil jedes element nur Teil eines Clusters, ich möchte zu löschen, diese aus der Karte und dann weiter mit dem nächsten element (d.h., den Bau der nächsten cluster).

Wie kann ich das tun, und noch weiter die iteration in der richtigen position?

InformationsquelleAutor der Frage Niko | 2013-03-27

Schreibe einen Kommentar