![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
AD |
![]()
Сообщение
#1
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: ![]() ![]() ![]() |
Вот тестовый код:
Интересен он следующим. Если заменить первый элемент на неудаляемый (например push_back(1)), то программа нормально выполняется. Если же тестировать указанную версию, то варианты - разные. На моей машине с Ubuntu g++ 4.6.1 он падает. На машине другого форумчанина он тоже падает, как в MSVC, так и в g++ 4.7.1, а вот у третьего форумчанина с g++ 4.6.3 этот код не падает. Что же это? Сразу говорю, что берется старый стандарт, т.е. не 2011. Понятно, что невалидный итератор, но почему же тогда иногда работает? |
|
|
![]() |
Алексей1153 |
![]()
Сообщение
#2
|
![]() фрилансер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2944 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: ![]() ![]() ![]() |
спокойнее ) Всё важно. Я же не для того, чтобы поспорить, а ради истины ))
Цитата Какие дополнительные задачи решаются от этого как раз надо плясать. Ну а когда чисто абстрактная задача - она решается ровно одной строкой (цикл там есть, загляни в исходники) Цитата Операции добавления и удаления самые важные в данной задаче, потому и используется список. и это не аргумент для выбора списка. Ты не сказал КАК и ЧТО ты добавляешь и удаляешь. Если всё остаётся на уровне школьной задачки, то считаем задачу решённой, ок. |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 23.7.2025, 6:10 |