У меня проблема, когда я хочу изменить элемент набора с помощью итератора. Этот простой код может объяснить, что я хочу сделать.
set<int> s;
s.insert(12);
set<int>::iterator it = s.begin();
*it = 4; // error C3892: 'it' : you cannot assign to a variable that is const
Почему я не могу изменить значение, на которое указывает обычный итератор, а не const_iterator?
В моем итераторе кода возвращался set:: find(). Возможно, это лучший способ выбрать определенный элемент из набора и изменить его.