Форум программистов, компьютерный форум CyberForum.ru

Вопрос по std::list - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ элементы структуры http://www.cyberforum.ru/cpp-beginners/thread403428.html
Помогите пожалуйста с примерами, как правильно ссылатся с помощью (.) или ->, напишите пожалуйста хотябы парочку ответов.Потому что я сам никак немогу понять сути . Хеееееееелп Имея следующие описания структур и объявления переменных Код C++ struct Customer { char lastName; char firstName; int customerNumber; struct { char phoneNumber; char address; char city; char state; char zipCode;
C++ Службы Windows 7 Всем привет. Не знаю с чего начать даже. В общем на компе стоит Wind7, на Wind7 стоит DHCP сервер DualServer.exe и осуществляется раздача интернета через Virtual wifi . Экспериментально вычислил, что иногда при запуске DualServer блокируются нужные ему порты службой "общий доступ к подключению к интернету (ICS)". Если закрыть эту службу потом запустить DHCP а потом вновь запустить службу то все... http://www.cyberforum.ru/cpp-beginners/thread403416.html
C++ Составить программы
1. Дана последовательность действительных чисел a1; a2; ...; an. Вставить действительное число b в нее так, чтобы последовательность осталась неубывающей. 2. Даны целые положительные числа a1; a2; ...; an. Найти среди них те, которые являются квадратами некоторого числа m. 3. Дана действительная квадратная матрица порядка n. Заменить нулями все ее элементы, расположенные на побочной диагонали...
C++ Как скопировать папку?
Как файлы копировать я знаю, НО вот как скопировать папку со всем её содержимым?
C++ Как скопировать папку? http://www.cyberforum.ru/cpp-beginners/thread403409.html
Как файлы копировать я знаю, НО вот как скопировать папку со всем её содержимым? Добавлено через 2 минуты Сори за дубляж, инет тупит. Удалите пожалуйста )
C++ [вопрос по YACC]Не получается поменять ассоциативность Стартовое правило описано право-рекурсивно list: expr | list expr В списке якка обрабатываеся набор правил, среди которых есть правило типа | expr '+' expr правило всегда выполняется начиная с первого выражения (т.е левоассоциативно). подробнее

Показать сообщение отдельно
DU
1478 / 1054 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
10.12.2011, 12:37     Вопрос по std::list
в общем случае это ошибка.
Итераторы не содержат в себе значения, они ссылаются на то, что хранится в контейнере. После того, как вы удаляете из контейнера что-то по итератору, то, на что ссылается итератор уже удалено. Итератор становится невалидным. Поэтому дальше что-то делать с итератором некорректно. Есть аналогия с указателями: операции с невалидным итератором это как операции с указателем, для которого позвали delete, т.е. операции с мертвым объектом. А операции с мертвыми объектами - это ошибка.
Это у вас было удаление из списка всех елементов с определенным значением. В списке есть также пара других ф-ий удления, которые работают с итераторами
http://www.cplusplus.com/reference/stl/list/erase/
Вот одна из них:
C++
1
iterator erase ( iterator position );
Она вовзвращает валидный итератор и это не просто так. Тот итератор, который ей на вход отдавали после отработки ф-ии становится невалидным.
 
Текущее время: 21:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru