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

Синхронизация map и vector. Iterator not incrementable - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Объяснить работу кода http://www.cyberforum.ru/cpp-beginners/thread1759704.html
Подскажите пожалуйста как работает этот код при F(9). На экран выводит 131159, но как это происходит? void F(int n) { if (n > 0) { F(n / 3); F(n - 4); cout << n; }
C++ Трансформация xml файла в INI файл Здравствуйте. Собственно говоря, дали задание (в названии). Проблема в том, что с этим я совсем не знаком. Кто может подсказать, что и где можно почитать, чтобы это потом можно было реализовать? http://www.cyberforum.ru/cpp-beginners/thread1759699.html
Можно ли написать ОС на Assembler'e и C++ C++
Решил просто написать ОС(хотя бы с минимальным набором программ, минимальными анимациями и интерфейсом приблизительно Шиндовса 3.1(просьба не критиковать сильно)). Знаю(на 65%) С++ и учу Ассемблер....
Изменить значение в возвращенном элементе массива C++
Подскажите.. #include "stdafx.h" #include <iostream> using namespace std; void innfunc(int*); int innfunc1(int*); int _tmain(int argc, _TCHAR* argv)
C++ Как присвоить второму элементу массива в функции A(), значение, которое было возвращено из функции B()? http://www.cyberforum.ru/cpp-beginners/thread1759673.html
Как присвоить к второму элементу массива в функции innfunc значение 10, который вернет innfunc1? Замечание: нельзя указывать b = 10, а просто нужно в элементе массива, который вернет функция ...
C++ Определить количество лет, в которые количество осадков превышало среднегодовое В массиве хранятся сведения о количестве осадков, выпавших за пять лет по месяцам. Определить количество лет, в которые количество осадков превышало среднегодовое. #include <iostream> #include... подробнее

Показать сообщение отдельно
Baron Rojo
2 / 2 / 0
Регистрация: 21.11.2012
Сообщений: 187

Синхронизация map и vector. Iterator not incrementable - C++

10.06.2016, 15:45. Просмотров 367. Ответов 7
Метки (Все метки)

День добрый. Надо синхронизровать vector и map, чтобы в них были только одинаковые элементы.
Вот мой код, который выбрасывает ошибку. (Скрин во вложениях). Вопрос: в чем проблема?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
void synchronize(map<int, int> *m1, vector<int>* vec1)
{
    map<int, int>::iterator itr_m1;
    map<int, int>::iterator itr2_m1 = m1->begin();
    int* p_vec = vec1->data();
    for (int i = 0; vec1->size(); i++) {
        for (itr2_m1 = m1->begin(); itr2_m1 != m1->end(); itr2_m1++)
        {
            if (itr2_m1->second != p_vec[i])
            {
                m1->erase(itr2_m1);
            }
 
        }
        itr2_m1 = m1->begin();
    }
 
}
0
Миниатюры
Синхронизация map и vector. Iterator not incrementable  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru