Обычно я бы доступ к регулярному кортеж элемент (скажем, 0) следующим образомДоступ к 0-й элемент из повышения :: слитого :: кортеж
mytuple->get<0>();
Однако если кортеж из бустера :: слияния типа: : кортеж, как получить доступ к 0-й элемент
Более подробно
у меня есть что-то вроде этого
typedef boost::fusion::tuple<double,double,double,std::string,double,double,int,
double,double,double,double,int,
double,double,double,double,double,
double,double,double,double,double,
double,double,double,double> tuple_def;
typedef boost::shared_ptr<tuple_def> my_tuple_def;
Теперь я использую его следующим образом
shared_tuple_def btuple = boost::make_shared<tuple_def>(boost::fusion::make_tuple(323,0,0,"A",0,0,0,
0,0,0,0,0,
0,0,0,0,0,
0,0,0,0,0,
0,0,0,0));
Как получить доступ к 0-й элемент, который является 323?
ли я осмелюсь спросить, что tuple_def на самом деле означает? Это похоже на большую кучу двойников и некоторых других случайных фигур, кажется хорошим кандидатом на использование структуры вместо кортежа. –
Первоначально это было всего 5 элементов, пока оно не увеличилось до этого. Я в конечном итоге преобразую его в структуру. 'tuple_def' - это первый тип def. Первый typedef используется в следующем утверждении – MistyD
Я думаю, именно поэтому я избегаю кортежей почти полностью - он начинается с 5 элементов, а следующая вещь, которую вы знаете, это 25, и ее трудно исправить. :) –