Wie kann ich Elemente aus einem std::set
entfernen, während ich darüber iteriere
Mein erster Versuch sieht so aus:
%Vor% Aber das ist problematisch, wenn wir das erste Element aus der Menge entfernen wollen, weil iter--
den Iterator ungültig macht.
Was ist der übliche Weg, dies zu tun?
Der Standardweg ist etwas wie
%Vor% Nach der ersten Bedingung sind wir sicher, dass iter
sowieso nicht ungültig gemacht wird, da eine Kopie von iter
an Erase übergeben wird, aber unsere iter
ist bereits inkrementiert, bevor das Löschen aufgerufen wird.
In C ++ 11 ist der Code wie
%Vor%Tags und Links c++ stl set coding-style