В C++ 0x Я хотел бы написать такую функцию:В C++ у вас есть функция, которая модифицирует кортеж переменной длины?
template <typename... Types>
void fun(typename std::tuple<Types...> my_tuple) {
//Put things into the tuple
}
Я первый попытался использовать цикл на int i
, а затем сделать:
get<i>(my_tuple);
А затем хранить некоторое значение в результате. Однако get
работает только с constexpr
.
Если бы я мог получить переменные из tuple
и передать их в вариационную шаблонную функцию, я мог бы очень легко переписать аргументы, но я не знаю, как получить переменные из кортежа без get
. Любые идеи о том, как это сделать? Или у кого-нибудь есть другой способ изменения этого tuple
?
Thanks! Мой код теперь выглядит так: template void fun (typename std :: tuple my_tuple) { get (my_tuple); fun (my_tuple); } –
2008-09-21 17:55:40