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

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

Войти
Регистрация
Восстановить пароль
 
IDmikael
0 / 0 / 0
Регистрация: 18.11.2014
Сообщений: 20
#1

Написать связыватель для получения унарного предиката - C++

13.06.2016, 13:38. Просмотров 140. Ответов 2

Написать связыватель, который бы связывал второй и третий аргументы трехаргументной функции для получения унарного предиката.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.06.2016, 13:38     Написать связыватель для получения унарного предиката
Посмотрите здесь:

Написать рекурсивную функцию для получения индекса максимального массива из 5 элементов - C++
Написать рекурсивную функцию для получения индекса максимального массива из 5 элементов помагите надо написать с++

Написать программу, которая определяет истинность предиката - C++
написать программу, которая определяет истинность предиката: L = NOT((CXOR B)AND ( AOR B))XOR B, где A = (sin(x) > cos(x)) , B = ( y...

Перегрузка унарного минуса - C++
Дайте, пожалуйста, правильны прототип оператора.

Перегрузка унарного оператора - C++
у меня есть метод, который выводит просто строку void CTimeCycle::operator>>(int x) { cout<<"123"; return ; } когда...

Перегрузка унарного минуса - C++
Здравствуйте! У меня проблема с перегрузкой унарного минуса. Проблема заключается в следующем: в строке longnum p(-l); ...

Перегрузка унарного оператора - C++
Помогите пожалуйста ! Очень нужно написать программу которая переводит валюту из евро в гривны используя класс и перегрузку унарного...

Перегрузка операции унарного + (-) - C++
операции унарного + (-): преобразующей строку к строчным (прописным) символам вот такое простенькое задание :(( Помогите, а то никак...

Перегрузка унарного минуса - C++
Всем доброго времени суток! Задание такое: В классе Animal перегрузить оператор -- (унарный, оператор класса), новое действие –...

Функция для получения пути к приложению - C++
Привет, как написать функция которая будет возвращать путь к запущенному приложении ? if( !gSplashTexture.loadFromFile( "splash.png" ) )...

Тема для получения полезной информации - C++
Здравствуйте! Предлогаю закрепить эту тему. Дабы не плодить темы с вопросами где находится это, как настроить то, что значит интерпритатор...

Функция для получения ThreadId приложения - C++
Народ, здрасти! Скажите пожалуйста, с помощью какой ф-ции можно надыбать ThreadId (или Thread) по хэндэлу или кэпшону приложения? Есть ли...

Алгоритм Маркова для получения палиндрома - C++
у меня есть программа использования алгоритма маркова для заданного слова состоящего из алфавита {a,b} что мне нужно дописать в коде что...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
4AKE
29 / 29 / 12
Регистрация: 20.12.2010
Сообщений: 116
13.06.2016, 18:00     Написать связыватель для получения унарного предиката #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <iostream>
 
using namespace std;
 
template<class F, class T>
struct Binder3 {
    Binder3(F f, T a2, T a3) : func(f), arg2(a2), arg3(a3) {}
    F func;
    T arg2, arg3;
    bool operator()(T arg1) {
        return func(arg1, arg2, arg3);
    }
};
 
 
template<class F, class T>
struct predicate_func {
    F func;
    T arg2, arg3;
    predicate_func(F f, T a2, T a3) : func(f), arg2(a2), arg3(a3) {}
    bool operator()(T arg1) {
        return func(arg1, arg2, arg3);
    }
};
 
template<class F, class T>
predicate_func<F, T> bind3(F f, T arg2, T arg3) {
    return predicate_func<F, T>(f, arg2, arg3);
}
 
 
bool f3(int a, int b, int c) {
    cout << a << " " << b << " " << c << endl;
    return (a + b) == c;
}
 
int main() {
    int b = 2;
    //вариант 1
    auto fp = bind3(f3, b, 3);
    cout << "fp(1) = " << fp(1) << endl;
 
    // вариант 2
    auto fp1 = Binder3<decltype(&f3), int>(f3, b, 4);
    cout << "fp1(2) = " << fp1(2) << endl;
 
    return 0;
}
IDmikael
0 / 0 / 0
Регистрация: 18.11.2014
Сообщений: 20
13.06.2016, 20:58  [ТС]     Написать связыватель для получения унарного предиката #3
ого, спасибо, вроде оно
Ответ Создать тему
Опции темы

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