Преобразовать тип кортежа
Так что я новичок в повышении MPL и не знаю, как использовать его со стандартными типами.
Я хочу метафункцию, которая охватывает этот тип:
std::tuple<T0, T1, ..., TN>
В это:
std::tuple<
std::function<T0(std::tuple<T0, T1, ...>, std::tuple<T0, T1, ...>)>,
std::function<T1(std::tuple<T0, T1, ...>, std::tuple<T0, T1, ...>)>,
...,
std::function<TN(...)>
>
и кажется, что это можно сделать спреобразование, но я хочу иметь тип кортежа, а не вектор типов. (Он не должен использовать MPL на самом деле, но я думаю, что это будет короче?)
Предыстория: в настоящее время я использую совершенно универсальные типы и полагаюсь, что все чертовски плохо, если используются неправильно, но я хочу вычислитьTupleOfFunctions
чтобы получить правильную ошибку.
template<class TupleOfValues, class TupleOfFunctions>
void f(TupleOfValues v, TupleOfFunctions fun)