Я пробую C ++ 0x и задавался вопросом, как решить следующую возникшую проблему. У меня есть класс вариативного шаблона:
template<typename... T>
class MyLovelyClass {
template<typename SomeType>
void DoSthWithStorageOfSomeType();
private:
std::tuple<std::vector<T>...> m_storage;
};
Предполагается, что функция выполняет какие-то манипуляции с вектором в кортеже m_storage, который соответствует аргументу шаблона SomeType (или сбой во время компиляции, если это не так). Как это сделать?
Моя идея заключалась в том, чтобы найти индекс SomeType в пакете параметров, а затем использовать std :: get для получения соответствующего вектора, но я не знаю, как сделать первую часть.