170 похожих чатов

Template<Typename F1, typename F2, ???> double mixer(F1 f1, F2 f2, double

a, double b, double c, double d) {
if(a > b)
return f1(b, c); // передать значения b и c
else
return f2(a, c, d); // передать значения a, c, d
}

какой вопрос, такой ответ :)

24 ответов

2 просмотра

функции же могут быть произвольными, точнее функция от нескольких даблов, возвращающая дабл

Alexander Karaev
понятнее не стало

в шаблон передаются две функции, и несколько даблов, некоторые из этих даблов используюся шаблоном, чтоб определить, какую из функций запустить, потом шаблон запускает одну из функций, передав ей нужные аргументы

Alexander Karaev
что такое НУЖНЫЕ?

вот это часть проблемы, как раз.

Alexander Karaev
что такое НУЖНЫЕ?

те, которые нужны, чего тебе непонятного

Alexander-Karaev Автор вопроса
anton
вот это часть проблемы, как раз.

ладно, задам вопрос иначе: double f1(double, double, double, double) double f2(double, double, double, double) mixer(f1, f2, a, b, c, d, e, f, g); - что должен вызвать и с какими аргументами?

Alexander Karaev
ладно, задам вопрос иначе: double f1(double, doub...

сдаётся мне товарищу на самом деле нужна struct args

Alexander-Karaev Автор вопроса
Constantine Drozdov
сдаётся мне товарищу на самом деле нужна struct ar...

а я боюсь, что он хочет по именам матчить

Liber Azerate
А можно пример?

struct args_t { double a; double b; double c; double d; }; double fn1(args_t const& args) { //use args.b & args.c } double fn2(args_t const& args) { //use args.a, args.c & args.d }

Liber Azerate
Умно, спасибо

не знаю про умно, а просто самое наивное из наивных я же не предложил для чтения b/c использовать get<enum class>(auto context)

Alexander Karaev
ладно, задам вопрос иначе: double f1(double, doub...

да, правильно, у меня есть два варианта - сделать разные типы, которые по сути являются даблами, чтоб было чтото типа double f1(typeA, typeB, typeC, typeD), либо передавать в шаблон массив, и списки индексов

Alexander-Karaev Автор вопроса
anton
да, правильно, у меня есть два варианта - сделать ...

что правильно? я вопрос задал, ответь на него

anton
да, правильно, у меня есть два варианта - сделать ...

это ответ на вопрос "как вы бы решали задачу", а вопрос задан "что за задача"

Alexander-Karaev Автор вопроса
anton
ну слушай это уже не конструктивно

вот ответьте, я хочу написать программу, использую CRTP но у меня получается другая программа, что мне делать

Constantine Drozdov
вы задачу объясните

ну вот, вроде бы работающий пример того, чего я хочу https://ideone.com/bjxo7q

Constantine Drozdov
struct args_t { double a; double b; do...

мне кажется, так нехорошо, потому что конечные функции начинают зависеть от этой структуры

Похожие вопросы

Обсуждают сегодня

Подобного рода ;Следующие три строки это директивы ассемблера, ;которые можно не задавать, т.к.работаем в Visual Studio. ;Символ ";" - это начало однострочного комментария ...
Егор Анелькин
3
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
Подскажите, где смотреть результат выполнения программы? Код: ;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, станда...
Егор Анелькин
5
Где в Астане можно купить мясо для шашлыков?
Dancing Іңұқәһүғө
21
;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, стандартный ;вызов процедуры ;option casemap:no...
Егор Анелькин
1
Добрый день подскажите пожалуйста может кто то сталкивался с ошибками Sentry 22.10.0 развернутым из helm чарт в Kubernetes? Изначально 3 дня назад очень стало много событий ух...
Tire4 Finist Devops
1
всем привет почти закончил курс После него можно писать свою операционку? Какие библиотеки надо использовать и куда дальше копать для изучения
Linus
22
почому оно не работает?
Vi Chapmann ٩( 💢•̀ з•́)و Chapmann
19
Карта сайта