Итак, я пытался использовать std :: get с переменной для поиска определенной позиции кортежа. Но, к моему удивлению, я не могу получить доступ к любой позиции с помощью кортежа. Вы, ребята, знаете, почему и как решить эту проблему? Мне нужно много контейнеров, которые дают мне разные типы.
Я помещу свой код сюда:
#include <iostream>
#include <tuple>
struct MyStruct
{
std::tuple<int, float> t;
int pos;
} myStruct;
int main()
{
MyStruct* var = new MyStruct();
var->t = std::make_tuple(1,2.33);
var->pos = 1;
std::get<1>(var->t); //this works
std::get<var->pos>(var->t); //this doesn't work but i need to search "dynamically"
}
С уважением!