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

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

Войти
Регистрация
Восстановить пароль
 
CHELOVEKPAUK
13 / 3 / 2
Регистрация: 01.08.2013
Сообщений: 332
Записей в блоге: 1
#1

Не осуществляется объединение двух контейнеров - C++

30.06.2014, 16:05. Просмотров 281. Ответов 2
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
set<string> matt, patt;
set<string> matt_and_patt;
 
Info_Processing(matt,"Matt"); // заполнение первого и второго множества
Info_Processing(patt,"Patt");
 
std::set_union(matt.begin(), matt.end(), patt.begin(), patt.end(), 
std::insert_iterator<set<string>>(matt_and_patt, matt_and_patt.begin()) );
Нужно объединить matt и patt и скопировать в matt_and_patt. При этом после использования функции set_union matt_and_patt все равно остается пустым! Что я делаю не так? В обоих множествах есть члены.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.06.2014, 16:05
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не осуществляется объединение двух контейнеров (C++):

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

Использование двух контейнеров из STL - C++
Нужно, чтобы: 1) Каждый объект имел свой уникальный ключ. 2) Быстрая выборка по ключу. 3) Быстрое прохождение по всем объектам. ...

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

Напечатать все буквы, входящие в текст не менее двух раз с использованием контейнеров map и multimap - C++
Дан текст из строчных латинских букв, за которыми следует точка. Напечатать все буквы, входящие в текст не менее двух раз; все согласные...

Программа из книги, в которой осуществляется вызов двух функций не работает - C++
Может кто поможет, не работает программа с книги &quot;Моя первая программа на С/С++&quot; А.Нейбауэр (Листинг 7.1. Программа, в которой...

Определить объединение из двух полей. Первое поле - массив из двух байт, второе - слово - C++
Определить объединение из двух полей. Первое поле - массив из двух байт, второе - слово. Ввести x в диапазоне от 1 до 15. Вычислить целое...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
DiffEreD
1430 / 767 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
30.06.2014, 16:45 #2
А так:
C++
1
2
std::set_union(matt.begin(), matt.end(), patt.begin(), patt.end(),
               std::inserter(matt_and_patt, matt_and_patt.begin()));
Добавлено через 3 минуты
Хотя, с std::insert_iterator код тоже рабочий, проблема где то в другом месте
1
CHELOVEKPAUK
13 / 3 / 2
Регистрация: 01.08.2013
Сообщений: 332
Записей в блоге: 1
30.06.2014, 16:55  [ТС] #3
DiffEreD, проблема исправилась другим способом - функция Info_Processing принимала копию аргумента а не ссылку, поэтому не изменяла контейнеры, и следовательно, не изменяла и третий контейнер.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.06.2014, 16:55
Привет! Вот еще темы с ответами:

Определить объединение из двух полей Первое поле - массив из двух байт, второе - слово - C++
Помогите написать программу( лучше с комментариями чтобы разобраться) Определить объединение из двух полей Первое поле - массив из двух...

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

Объединение двух if - C++
Можно ли как то объединить 2 if-а? #include &lt;iostream&gt; using namespace std; int main() { setlocale(LC_ALL,&quot;RUS&quot;); int...

Объединение двух массивов - C++
Выполнено два задания:нашли Элементы массива A, которые не включаются в B и Элементы массива B, которые не включаются в A. Как объединить...


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

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

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