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

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

Войти
Регистрация
Восстановить пароль
 
razor_ua
10 / 10 / 0
Регистрация: 20.05.2011
Сообщений: 71
#1

STL функторы, предикаты - C++

20.12.2013, 12:43. Просмотров 657. Ответов 3
Метки нет (Все метки)

У нас есть:

C++
1
std::multimap<std::string,std::string>  map;
нужно удалить все повторяющиеся ключи, используя алгоритм с предикатом.

Есть функтор , который вернет true, если ключ совпал с передаваемым параметром(параметр один - строка).
Я не знаю как его правильно реализовать

C++
1
2
3
4
5
6
7
8
9
10
11
12
class WordsThatBeginWith 
{ 
    std::pair<std::string,std::string> dict;
public: 
   // WordsThatBeginWith(std::pair<std::string,std::string> d) : dict(d)
   // { }
 
    bool operator()(std::string a) const 
    { 
        return dict.first == a; 
    } 
};
а потом нам нужно удалить ВСЕ повторяющиеся элементы (было "а б в в а", станет "б" )
C++
1
dic.erase(std::unique(dic.begin(), dic.end(), WordsThatBeginWith("a")),dic.end());
в этой строке тоже что-то не так (
Прошу помощи, плз!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.12.2013, 12:43
Здравствуйте! Я подобрал для вас темы с ответами на вопрос STL функторы, предикаты (C++):

STL, функторы - C++
Всем привет! Вообщем есть код: #include &lt;iostream&gt; #include &lt;algorithm&gt; #include &lt;vector&gt; int main() { std::vector&lt;int&gt;...

Функторы и алгоритмы stl - C++
Добрый день! Интересует такой вопрос. Я хочу, используя стандартный алгоритм стл for_each() и функтор, определить наибольший элемент в...

Предикаты в STL - C++
Здравствуйте, не могу понять что должна принимать функция в качестве унарного предиката или бинарного. Вот допустим контейнер LIST, можете...

Предикаты STL - C++
Решил вот так простенькую задачку, в условии задачи&quot; использовать указатели на функции и осортировать массив в порядке возрастания и...

функторы && STL - C++
Знакомлюсь с функторами. Помогите реализовать поиск минимального числа в последовательности, средн.арифмет. в посл-ти и количество...

Функторы - C++
Не могу понять в чем ошибка. Когда func вызывается в main все в порядке, а когда из функции test, то выдает ошибку &quot;результатом вычисления...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MrGluck
Модератор
Эксперт CЭксперт С++
7239 / 4407 / 642
Регистрация: 29.11.2010
Сообщений: 11,929
20.12.2013, 12:46 #2
А если просто загнать в мап и все само собой отсеется?
0
Tulosba
:)
Эксперт С++
4396 / 3239 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
20.12.2013, 12:54 #3
razor_ua, std::unique удаляет только смежные совпадения. А вообще, зачем строить себе проблемы, прислушайтесь к совету MrGluck.
0
razor_ua
10 / 10 / 0
Регистрация: 20.05.2011
Сообщений: 71
20.12.2013, 15:15  [ТС] #4
не спорю...
задание именно такое...
нужно разобраться с мультимапой...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.12.2013, 15:15
Привет! Вот еще темы с ответами:

Функторы, алгоритмы и адаптеры - C++
Нужна помощь! 1 Нужно создать multimap и multiset на основе элементов типа класса CPerson, содержащий в своем классе следующие...

Стандартные функторы-адаптеры - C++
Добрый вечер! Хочу отсортировать контейнер, заполненный указателями на объекты класса Class, критерий сортировки - метод этого класса. При...

Шаблоны и функторы как callback для класса свойства объекта. Код работает - но не должен - C++
Здравствуйте! Хочу написать реализацию класса свойства на шаблоне. Т.е есть объект, он инициирует необходимые проперти, в графическом...

Предикаты\Функторы - C++
Здравствуйте, взялся за прочтение алгоритмов STL и наткнулся на такой вопрос, что же такое Предикаты\Функторы. Определения и примеры я...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
20.12.2013, 15:15
Ответ Создать тему
Опции темы

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