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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Казаков Игорь
0 / 0 / 0
Регистрация: 01.03.2013
Сообщений: 34
#1

Список - C++

21.07.2013, 10:54. Просмотров 738. Ответов 29
Метки нет (Все метки)

написал функцию, которая удаляет звено списка, если выполняется условие( если параметр функции == полю звена), однако вылетает ошибка list iterator not incrementable, когда удаляется последнее звено
C++
1
2
3
4
5
6
7
8
void CarPark::GoOutCarPark(int number)
{
    for (auto it = machine.begin(); it != machine.end(); it++)
    {
        if (number == it->GetNumber())
            it = machine.erase(it);
    }   
}
machine(список)
GetNumber- возвращает нужное поле
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.07.2013, 10:54     Список
Посмотрите здесь:

Односвязный список в список - C++
Всем привет. Гугл мне ответа не дал. Не понимаю, как один список вставить в другой и как передвигаться по нему? В одном списке хранится...

7. Написать программу, содержащую функцию, которая определяет, входит ли список М1 в список М2. Предполагается, что списки существуют - Pascal
7. Написать программу, содержащую функцию, которая определяет, входит ли список М1 в список М2. Предполагается, что списки существуют.

В список не добавляется другой список, что делать? - C#
Метод просто берёт строку слов и разбрасывает слова по массивам меняя их местами так, что бы каждое слово исходной строки в конечном...

Запросы: список приказов, вышедших за заданный период; список приказов, которые не были выполнены в срок - MySQL
Добрый день всем, хочу вас попросить помочь с написанием 3-х небольших запросов, сам никак не врублюсь, не откажите пожалуйста)) ...

Списки: Переписать список в список - C (СИ)
Помогите пожалуйста, не могу разобраться задача поставлена следующим образом: Написать программу которая формирует из последовательности...

Определить, входит ли список A в список B - Pascal ABC
Нужна помощь, записать функцию, входит ли список A в список B p.s. есть мысль, но и проблема написания состоит в том, как проверить...

Ввести список студентов и их группу Вывести список студентов заданной группы - C++/CLI WinForms
Ребят, помогите пожалуйста, ибо в windowsform вообще не шарю и не знаю как его записать, может ли кто-то помочь? Буду очень признателен. ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
21.07.2013, 12:26     Список #21
Мой код в 5 посте неверный, там нужно добавить:
C++
1
2
3
4
5
6
7
8
9
10
11
void CarPark::GoOutCarPark(int number)
{
    for (auto it = machine.begin(); it != machine.end(); it++)
    {
        if (number == it->GetNumber())
       {
            it = machine.erase(it);
            if (it != machine.begin()) --it;
       }
    }   
}
Kuzia domovenok
1889 / 1744 / 117
Регистрация: 25.03.2012
Сообщений: 5,922
Записей в блоге: 1
21.07.2013, 12:27     Список #22
lazybiz, error C4430: missing type specifier - int assumed. Note: C++ does not support default-int

Так что туфта по твоей ссылке!
castaway
Эксперт С++
4880 / 3016 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
21.07.2013, 12:28     Список #23
Включи у себя стандарт С++11, туфта...
Kuzia domovenok
1889 / 1744 / 117
Регистрация: 25.03.2012
Сообщений: 5,922
Записей в блоге: 1
21.07.2013, 12:29     Список #24
Цитата Сообщение от lazybiz Посмотреть сообщение
Включи у себя стандарт С++11, туфта...
а) как?
б) зачем?
в) если забить на типы, С++ превратится в сраный Бейсик
г) использовать одно ключевое слово auto для двух абсолютно разных целей... ну и бред! Давайте слово while будет обозначать ещё и какой-нибудь новый спецификатор из нового стандарта.
castaway
Эксперт С++
4880 / 3016 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
21.07.2013, 12:32     Список #25
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
а) как?
б) зачем?
Если не знаешь как и зачем, тогда зачем вообще залез в эту тему?
Цитата Сообщение от lazybiz Посмотреть сообщение
ТС использует именно стандарт С++11.
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
21.07.2013, 12:34     Список #26
Сейчас на таком коде проверил:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <iostream>
#include <cstdlib>
#include <algorithm>
#include <list>
using namespace std;
 
void f(list <int>& lst, int number)
{
    for (auto it = lst.begin(); it != lst.end(); it++)
    {
        if (*it == 5)
        {
            it = lst.erase(it);
            if (it != lst.begin()) --it; // если закоментировать, то будет ошибка
        }
    }   
}
 
int main()
{
    int arr[5] = {5, 3, 5, 3, 5};
    list<int> lst(arr, arr + 5);
    
    f(lst, 5);
 
    for (auto it = lst.begin(); it != lst.end(); it++)
    {
        cout << *it << ' ';
    }
    
    return 0;
}
Kuzia domovenok
21.07.2013, 12:39
  #27

Не по теме:

Цитата Сообщение от lazybiz Посмотреть сообщение
Если не знаешь как и зачем, тогда зачем вообще залез в эту тему?
да тут, я смотрю, сплошные тролли в теме! Один я что ли серьёзно обсуждаю вопрос?

castaway
21.07.2013, 12:44
  #28

Не по теме:

Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Один я что ли серьёзно обсуждаю вопрос?
серьезно обсуждает)))) Два года назад новый стандарт вышел, иди, почитай)))

Kuzia domovenok
21.07.2013, 12:46
  #29

Не по теме:

Цитата Сообщение от lazybiz Посмотреть сообщение
серьезно обсуждает)))) Два года назад новый стандарт вышел, иди, почитай)))
ещё бы мне и компилятор этого стандарта дали... А то сижу под MSVS2008 и проблем не знаю. Всё таки в Microsoft - гении!

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.07.2013, 15:21     Список
Еще ссылки по теме:

Список: Взять исходный список SP и создать два новых списка SP1 и SP2. SP1 содержит нечетные узлы, а SP2 – четные - C (СИ)
Что-то карета не вывезла и превратилась в тыкву. не могу понять почему данные не записывают в SP2 не понимаю почему в SP1 только...

Входит ли список b в список a - Lisp
Здравствуйте, вечные проблемы с рекурсией, никак не могу ее понять. Помогите, пожалуйста Реализовать функцию, которая выдает T, в случае...

Список: перевернуть список - Pascal
Дан список А, состоящий из записей: первое поле – символ, второе – адрес следующего элемента. Составить программу, которая переворачивает...

Как сделать чтобы у каждой строки был свой список. Например, есть маршрутка, у каждой из нее есть свой список - SQL Server
Как сделать чтобы у каждой строки был свой список. Например, есть маршрутка, у каждой из нее есть свой список остановок. Остановки не...

Список стран и список столиц этих стран - Lisp
Составить нерекурсивную программу в форме λ-вызова, откомпилировать и выполнить на SECD-машине. Результаты выполнения представить в виде...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Казаков Игорь
0 / 0 / 0
Регистрация: 01.03.2013
Сообщений: 34
21.07.2013, 15:21  [ТС]     Список #30
мне кажется, что ошибка здесь, потому что при трассировке, прога падает именно здесь.
Yandex
Объявления
21.07.2013, 15:21     Список
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru