If I have a struct like: struct Thing { int x, int y, bool a, bool b } Then I can create a `Thing` object by doing: `Thing t {1,2,true,false};`. However, if I have a tuple then I am doing something like: std::tuple<int, int, bool, bool> info = std::make_tuple(1,2,true,false); Thing t { std::get<0>(info), std::get<1>(info).. // and so on Is there a better way to do this?