#include <iostream>
#include <unordered_map>
#include <algorithm>
int main() {
std::unordered_map<int, int> uom = { { 0, 10 }, { 1, 11 }, { 2, 12 } };
auto fit = std::remove_if(uom.begin(), uom.end(),
[](const std::pair<int, int>& values) { return values.first == 1; });
for (auto& values : uom) {
std::cout << values.first << ' ' << values.second << '\n';
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dW5vcmRlcmVkX21hcD4KI2luY2x1ZGUgPGFsZ29yaXRobT4KCmludCBtYWluKCkgewoJc3RkOjp1bm9yZGVyZWRfbWFwPGludCwgaW50PiB1b20gPSB7IHsgMCwgMTAgfSwgeyAxLCAxMSB9LCB7IDIsIDEyIH0gfTsKCWF1dG8gZml0ID0gc3RkOjpyZW1vdmVfaWYodW9tLmJlZ2luKCksIHVvbS5lbmQoKSwKCQlbXShjb25zdCBzdGQ6OnBhaXI8aW50LCBpbnQ+JiB2YWx1ZXMpIHsgcmV0dXJuIHZhbHVlcy5maXJzdCA9PSAxOyB9KTsKCWZvciAoYXV0byYgdmFsdWVzIDogdW9tKSB7CgkJc3RkOjpjb3V0IDw8IHZhbHVlcy5maXJzdCA8PCAnICcgPDwgdmFsdWVzLnNlY29uZCA8PCAnXG4nOwoJfQp9
In file included from /usr/include/c++/5/bits/stl_algobase.h:64:0,
from /usr/include/c++/5/bits/char_traits.h:39,
from /usr/include/c++/5/ios:40,
from /usr/include/c++/5/ostream:38,
from /usr/include/c++/5/iostream:39,
from prog.cpp:1:
/usr/include/c++/5/bits/stl_pair.h: In instantiation of 'std::pair<_T1, _T2>& std::pair<_T1, _T2>::operator=(std::pair<_T1, _T2>&&) [with _T1 = const int; _T2 = int]':
/usr/include/c++/5/bits/stl_algo.h:868:23: required from '_ForwardIterator std::__remove_if(_ForwardIterator, _ForwardIterator, _Predicate) [with _ForwardIterator = std::__detail::_Node_iterator<std::pair<const int, int>, false, false>; _Predicate = __gnu_cxx::__ops::_Iter_pred<main()::<lambda(const std::pair<int, int>&)> >]'
/usr/include/c++/5/bits/stl_algo.h:936:30: required from '_FIter std::remove_if(_FIter, _FIter, _Predicate) [with _FIter = std::__detail::_Node_iterator<std::pair<const int, int>, false, false>; _Predicate = main()::<lambda(const std::pair<int, int>&)>]'
prog.cpp:8:70: required from here
/usr/include/c++/5/bits/stl_pair.h:170:8: error: assignment of read-only member 'std::pair<const int, int>::first'
first = std::forward<first_type>(__p.first);
^