Danke, dass du versuchst hast, es zu veranschaulichen, aber in deinem Beispiel verwendest du den Iterator nachher nicht mehr.
Verwende ich den Iterator wie in meinem Beispiel springt er vom 1. Element zum 2., dann zum 3 usw.
Lösche ich dann, wenn er beim 4. Element angelangt ist, diese Position, springt dann der Iterator danach normal weiter aufs 5. Element?
Oder zeigt er ins nirgendwo bzw. stattdessen aufs 6. Element, womit der Iterator unbrauchbar geworden ist (weil zB die map sich nach dem Löschvorgang gleich neu strukturiert hat)?
Wär dann von Interesse, wenn ich alle die nicht einem bestimmten String entsprechen löschen und gleichzeitig die "alte" Position in der map ausgeben will. Restrukturiert sich die map, verlier ich nämlich die richtige, alte Position nach jedem Löschvorgang. Eine eigene Zählvariable für die Position wäre ja auch nur eine Notlösung.
Reichts, wenn ich den Iterator nicht erhöhe, springt er beim Löschen dann automatisch aufs neue Element?
Werds vielleicht doch selbst ausprobieren, aber eine richtige Erklärung wär mir doch lieber.