#include <unordered_map>
#include <string>
#include <iostream>
int main () {
using std::unordered_map;
using std::string;
unordered_map<string, int> employeeTable;
unordered_map<string, int>::iterator it;
employeeTable["hello"] = 4;
employeeTable["goodbye"] = 2;
employeeTable["Hello, again"] = 27;
std::cout << employeeTable.size() << "\n";
for (it = employeeTable.begin(); it != employeeTable.end();) {
int age = it->second;
if (age < 18) {
employeeTable.erase(it++); // <== FAILS HERE!!!!!!
} else {
++it;
}
}
std::cout << employeeTable.size() << "\n";
}
I2luY2x1ZGUgPHVub3JkZXJlZF9tYXA+CiNpbmNsdWRlIDxzdHJpbmc+CiNpbmNsdWRlIDxpb3N0cmVhbT4KCmludCBtYWluICgpIHsKICB1c2luZyBzdGQ6OnVub3JkZXJlZF9tYXA7CiAgdXNpbmcgc3RkOjpzdHJpbmc7CgogICAgdW5vcmRlcmVkX21hcDxzdHJpbmcsIGludD4gZW1wbG95ZWVUYWJsZTsKICAgIHVub3JkZXJlZF9tYXA8c3RyaW5nLCBpbnQ+OjppdGVyYXRvciBpdDsKCiAgICBlbXBsb3llZVRhYmxlWyJoZWxsbyJdID0gNDsKICAgIGVtcGxveWVlVGFibGVbImdvb2RieWUiXSA9IDI7CiAgICBlbXBsb3llZVRhYmxlWyJIZWxsbywgYWdhaW4iXSA9IDI3OwoKICAgIHN0ZDo6Y291dCA8PCBlbXBsb3llZVRhYmxlLnNpemUoKSA8PCAiXG4iOwoKICAgIGZvciAoaXQgPSBlbXBsb3llZVRhYmxlLmJlZ2luKCk7IGl0ICE9IGVtcGxveWVlVGFibGUuZW5kKCk7KSB7CiAgICAgICBpbnQgYWdlID0gaXQtPnNlY29uZDsKICAgICAgIGlmIChhZ2UgPCAxOCkgewogICAgICAgICAgZW1wbG95ZWVUYWJsZS5lcmFzZShpdCsrKTsgLy8gPD09IEZBSUxTIEhFUkUhISEhISEKICAgICAgIH0gZWxzZSB7CiAgICAgICAgICArK2l0OwogICAgICAgfQogICAgfQoKICAgIHN0ZDo6Y291dCA8PCBlbXBsb3llZVRhYmxlLnNpemUoKSA8PCAiXG4iOwoKfQoK