Wie man Schlüsselwerte in std :: map container @ ände

Gegebe

std::map<int,std::string> myMap;
fillMyMapWithStuff(myMap);

// modify key values - I need to add a constant value to each key
for (std::map<int,std::string>::iterator mi=myMap.begin(); mi != myMap.end(); ++mi)
{
    // ...
}

Was ist ein guter Weg, um eine Neuindizierung anzuwenden? Muss ich den alten Eintrag entfernen und einen neuen mit dem neuen Schlüssel und dem alten Wert hinzufügen?

Antworten auf die Frage(10)

Ihre Antwort auf die Frage