![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| segmentation_fault |
|
||||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 14.2.2005 Где: в интернете Репутация: 1 Всего: 1 |
Доброе время суток.
Проблема такая. Имеется iterator для std::map. Его нужно передвинуть на n*2-2 позиции вперед (где н является int). Я сначала пробовал вот так:
Компилятор ругается Потом вот так, с использованием size_type
И так
Все равно ругается
Я так думаю что оператор+= в std::map::iterator должен быть, так что что я делаю неправильно? Компилятор gcc 2.91 Это сообщение отредактировал(а) segmentation_fault - 29.4.2005, 03:10 |
||||||||
|
|||||||||
| Void |
|
||||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
Не должен. Итераторы в std::map являются bidirectional, т.е. поддерживают только операции инкремента и декремента. Решение проблемы: std::advance:
-------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
||||
|
|||||
| segmentation_fault |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 14.2.2005 Где: в интернете Репутация: 1 Всего: 1 |
Void, спасибо
|
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |