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

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

Войти
Регистрация
Восстановить пароль
 
Origamo
0 / 0 / 0
Регистрация: 06.09.2016
Сообщений: 20
Завершенные тесты: 1
#1

Пересечение контейнеров - C++

08.11.2016, 11:42. Просмотров 120. Ответов 2
Метки нет (Все метки)

Пытаюсь пересечь контейнеры(чтобы не было повторяющихся элементов),но выдает vector iterators incompatible
,если перед итераторами ничего стоит,а если поставить *,то ничего не происходит,т.е контейнеры равны,а условие не выполняется
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
vector <list_el> A = ptr[b].groups[0].list;
vector <list_el> copy;
vector <list_el>::iterator it = A.begin();
copy.insert(copy.begin(), A.begin(), A.end());
vector <list_el> B = ptr[a].groups[0].list;
vector <list_el>::iterator it1 = B.begin();
vector <list_el>::iterator check = copy.begin();
        for (; it1 != B.end(); it1++)
        {
        for (; check != copy.end(); check++)
        {
            if (it1 == check)
            B.erase(it1);
        }
        }
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.11.2016, 11:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Пересечение контейнеров (C++):

Пересечение двух прямых и проверка на пересечение - C++
Доброго времени суток слизал функцию проверки отсюда:/segments_intersection_checking на всякий случай у меня она выглядит так: int...

обход контейнеров - C++
Всем привет. Можно ли как-нибудь написать цикл фор под два контейнера для полученя доступа к Data ? class Data { public: int...

Сравнение разных контейнеров - C++
Я не спорю, программа примитивная, но с какой стороны ее оптимизировать? #include &lt;iostream&gt; #include &lt;string.h&gt; #include &lt;fstream&gt; ...

Синхронизация контейнеров (STL) - C++
Добрый день, задание следующее: 1) написать функцию которая принимает в качестве аргумента ссылку или указатель на вектор, заполняет...

Разбор массивов/контейнеров - C++
Только начинаю изучть с++, необходимо сделать 2 ассоциативных динамических массива и походу сразу разобраться что да как. Задача такова,...

Объединение двух контейнеров - C++
функция программы, которая производит логическое объединение двух контейнеров. дело в том, что переменная check инициализируется абы как -...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
zss
Модератор
Эксперт С++
6359 / 5923 / 1920
Регистрация: 18.12.2011
Сообщений: 15,227
Завершенные тесты: 1
08.11.2016, 12:47 #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
        for (; it1 != B.end(); it1++)
        {
             vector <list_el>::iterator check = copy.begin();
             for (; check != copy.end(); check++)
            {
                   if ( it1->value == check->value) // value - это имя переменной, которая хранится в Вашем списке (замените на правильное)
                         B.erase(it1);
            }
        }
MrGluck
Модератор
Эксперт CЭксперт С++
7210 / 4376 / 638
Регистрация: 29.11.2010
Сообщений: 11,887
08.11.2016, 12:50 #3
Чем не подошёл стандартный алгоритм?
http://www.cplusplus.com/reference/a...ic_difference/
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.11.2016, 12:50
Привет! Вот еще темы с ответами:

Расширение stl контейнеров - C++
Собственно сабж. Из идей: 1. class MyC { public: .... //reimplement stl func

Исключения в конструкторах стандартных контейнеров - C++
Очень тупой вопрос: могут ли перемещающие конструкторы std::map и std::vector выкинуть исключение? С одной стороны, ну чему там кидать...

Слить много контейнеров в один - C++
здравствуйте, подскажите, что не так в коде, ибо не совсем правильно работает (мозг сносит уже от подобного) : void...

Взаимодействие двух контейнеров объектов - C++
Здравствуйте. Вопрос, наверное, уместнее задать на геймдеве, но всё же попробую здесь. Есть два контейнера объектов (монстры и пули),...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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