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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вычислить сумму положительных элементов матрицы и переставить ненулевые элементы второго столбца в его начало http://www.cyberforum.ru/cpp-beginners/thread1049599.html
Составить программу, в которой 1) организовать ввод квадратной матрицы размера nxn из целых чисел; 2) вычислить сумму положительных элементов; 3) переставить ненулевые элементы второго столбца матрицы в его начало; 4) организовать ввод и вывод матрицы в виде отдельных функций.
C++ Error C2064 результатом выч фрагмента не является функция прин. 0 аргументов Добрый день. Подскажите пожалуйста. Написана функция int Inic () {переменные for (int i=1; i<9; i++) { действия http://www.cyberforum.ru/cpp-beginners/thread1049586.html
Функция воспроизведения звука через колонки C++
На днях решил написать программку через функцию Beep();. Все что я испробовал, чтобы звук выходил из сис. динамика-не получалось. В опубликованной мной теме, я все больше и больше начинаю понять что сис. динамик слетел, просто напросто. Так вот, если ли такая другая функция, которая получает аргументы частоты и продолжительности звука (то есть как функция Beep();) но выводит звук не через сис....
Именить код. Из статистической сделать динамический массив C++
Помогите, пожалуйста ещё разок=(( Это статистический массив, но у меня не получается что-то в нём изменить, чтобы получился динамический массив. #include <iostream> #include <cmath> using namespace std; //Ôóíêöèÿ ââîäà ìàòðèöû void vvod(float a,int n) { int i,j; setlocale(LC_ALL,"Russian"); cout<<"\n Ââåäèòå ìàòðèöó:\n";
C++ Тема: работа со структурами http://www.cyberforum.ru/cpp-beginners/thread1049565.html
Составить программу, в которой описывается структура из полей: Фамилия, номер телефона, адрес. Организовать ввод двух структурных переменных, вывод каждой структуры на экран и вывести на экран Номер телефона человека, чья фамилия введена с клавиатуры (если такого человека нет, вывести сообщение об этом)
C++ слияние массивов даны 2 массива , массив А содержит n эле-тов и отсортирован по возрастанию, массив В содержит m эл-тов и отсортирован по убыванию.. написать программу для слияния этих массивов в массив С не содержащий одинаковых эл-тов. подробнее

Показать сообщение отдельно
razor_ua
10 / 10 / 0
Регистрация: 20.05.2011
Сообщений: 71

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

20.12.2013, 12:43. Просмотров 655. Ответов 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());
в этой строке тоже что-то не так (
Прошу помощи, плз!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru