Я начал играть с ускорителем и mpl-библиотекой и застрял в довольно простой проблеме.Получение индекса boost :: fusion :: vector from boost :: mpl :: vector
Я объявил следующие типы:
typedef boost::mpl::vector<char, int, long> TypeVector;
typedef boost::fusion::vector<char, int, long> FusionVector_t;
Теперь я хотел бы написать функцию, которая получает мне значение от FusionVector.
template<size_t N typename T>
T getValue(FusionVector_t fvec)
{
return boost::fusion::at_c<N>(fvec);
}
Функция работает, как ожидалось, но я хотел бы получить индекс от вектора повышение :: MPL и использовать его в этой функции и не передать его в функцию в качестве параметра шаблона. Но я пока не понял, как это сделать.
Может ли кто-нибудь дать мне подсказку?
Спасибо за отзыв. MPL и вектор слияния одинаковы. Но ваш подход кажется намного чище, чем мой. Также причина для использования fusion :: vector заключалась в том, что я пришел из библиотеки кортежей. Но я буду придерживаться вашего предложения. большое спасибо – mkaes