Учитывая эти декларации:
int a[3] {10,20,30};
std::tuple<int,int,int> b {11,22,33};
Я могу использовать объявления структурированной привязки для декодирования a
и b
:
auto [x1,y1,z1] = a;
auto [x2,y2,z2] = b;
Но если x1
, y1
и т. д. уже существуют, что мне делать?
std::tie(x1,y1,z1) = a; // ERROR
std::tie(x2,y2,z2) = b; // OK
Это работает для b
, но не для a
. Есть ли аналогичная простая конструкция, которая работает для a
, или мне нужно получать a[0]
, a[1]
и a[2]
отдельно?