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

map - заполнение и удаление - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Посчитать количество элементов в одномерном массиве http://www.cyberforum.ru/cpp-beginners/thread991300.html
Помогите решить задачу . Посчитать сколько элементов в одномерном массиве, состоящих из четырех или меньше символов. Вывести количество элементов.
C++ Не работает вывод кириллицей Не знаю как сделать что бы выводилось русскими буквами! Кто знает помогите http://www.cyberforum.ru/cpp-beginners/thread991284.html
C++ Вычислить значение выражения
Пожалуйста, весь код.
C++ При выполнении определенного условия поменять порядок следования символов строки на противоположный
Заданы 2 строки, состоящие из слов, разделенных пробелами. Если второе слово первой строки такое же, как второе слово второй строки, то поменять порядок следования символов первой строки на...
C++ Класс для работы с текстовыми файлами С++ http://www.cyberforum.ru/cpp-beginners/thread991193.html
Создать иерархию с 2 классов, с 2 конструкторами для работы с текстовым файлом. Нужно наполнить файл, посчитать количество строк, вывести, удалить, вставить строки на заданную позицию. Есть вот такие...
C++ Считать строку в Visual C++ #include "stdafx.h" #include <iostream> #include <string> #include <stdio.h> #include <conio.h> #include "cstring" #include "clocale" using namespace std; struct student подробнее

Показать сообщение отдельно
dimakozyr
158 / 25 / 1
Регистрация: 17.08.2013
Сообщений: 467
29.10.2013, 22:29  [ТС]
Решил представить решение из 22 поста в классе,
но почему-то возникает ошибка:
Член "ContainerProcessing::myMap" не является переменной

// *.h
C++
1
2
3
4
class ContainerProcessing {
  private:
      static map<int, int> myMap;
};
// *.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
int ContainerProcessing::synchronizeContainers() {
    vector<int> original(myVector);
 
    myVector.erase(remove_if(myVector.begin(),
                             myVector.end(),
                             [&myMap](int v)  // Error: +2 перегрузок
        // Член "ContainerProcessing::myMap" не является переменной
        { return myMap.find(v) == myMap.end(); }), myVector.end());
    
    for(map<int, int>::const_iterator pos = myMap.begin();
        pos != myMap.end();) {
        if(find(original.begin(),
                original.end(),
                pos -> first) == original.end())
            pos = myMap.erase(pos);
        else
            ++pos;
    }
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.