auto value = make_tuple(10, 'a', std::string("YourName"));
В стандарте C++17 стало возможным писать такой код:
```cpp
auto [a, b, c] = value
auto& [x, y, z] = value;
Идея No 1
Но (да, такое бывает) может быть такое, что хочется сделать что-то такое, но не заводить новые переменные.
Т.е. что-то такое:
auto [a, b, c] = value;
if (conditional_function(a)) {
[a, b, c] = value2;
}
Т.е. хотелось бы сделать возможным structured bindings в присваивании.
Идея No 2
Вот есть то, что есть выше и в стандарте 17 года.
Хотелось бы иметь возможность и заводить переменные этой инструкцией, и инициализировать уже существующие.
Что это такое сейчас
Пусть есть код:
Идея No 1
Но (да, такое бывает) может быть такое, что хочется сделать что-то такое, но не заводить новые переменные. Т.е. что-то такое:
Но такое невозможно сделать сейчас.
Предложение
Ввести дополнительный синтаксис
Т.е. хотелось бы сделать возможным structured bindings в присваивании.
Идея No 2
Вот есть то, что есть выше и в стандарте 17 года. Хотелось бы иметь возможность и заводить переменные этой инструкцией, и инициализировать уже существующие.
Предложение
Можно писать типы в инструкции из идеи 1.
Хотелось бы сделать валидным такую вещь:
Т.е. появилось 2 новых переменных: int x и std::string& name.