Рассмотрим следующий код:Преобразовать скалярная + станд :: массив + станд :: кортеж в большой кортеж
template <class Scalar, class Array, class Tuple>
class Test {};
где Array
является std::array
и Tuple
является std::tuple
. В этом классе у меня будет много SFINAE, и я бы хотел создать большой кортеж под названием Types
, который будет содержать полный список типов. Это позволит мне проверить некоторые условия с вариационными списками.
Таким образом, задача состоит в том, чтобы создать тип, который будет иметь следующее поведение. Если:
Scalar = int
Array = std::array<double, 3>
Tuple = std::tuple<char, float, std::string>
Тогда:
Types = std::tuple<int, double, double, double, char, float, std::string>
, который является конкатенацией внутренних данных Scalar
, Array
и Tuple
.
Как это сделать?
вы хотите объединить массивы с кортежами – aaronman
[ 'станд :: tuple_cat'] (HTTP://coliru.stacked-crooked.com/view?id=8dbb18afcd1077d40ba97730bb58feca-0ef62b711c3b4aca94c9bcb419c937b3)~ – Xeo