Re: алгоритмы STL
От: Vain Россия google.ru
Дата: 22.03.12 17:33
Оценка:
Здравствуйте, qaz77, Вы писали:

Q>И еще, связанный вопрос про std::set.

Q>Почему оставлена возможность изменить элемент set'а? Это для компаратора по части элемента?
Q>Если в простом примере поменять элемент, то контейнер умирает:
Q>
Q>  std::set<std::string> s;
Q>  s.insert("A")
Q>  s.insert("B");

Q>  *s.begin() = "C";
Q>  //... oops
Q>

Q>Если бы разыменование итератора возвращало константную ссылку, то такой проблемы бы не возникало.
А если изменения ключа не приводит к изменению порядка, то зачем платить больше?

Q>При этом не константный итератор позволял бы удалять и вставлять элементы.

У вставки/удаления сложность не константная.
[In theory there is no difference between theory and practice. In
practice there is.]
[Даю очевидные ответы на риторические вопросы]
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.