В c++17 появился новый синтаксис объявления переменных вида:
auto [x, y, z] = f();
где f() - функция, возвращающая составной объект (массив, кортеж, структуру и т.п.).
Как называется этот синтаксис и что он делает?
Ответ
Данная конструкция называется Structured binding declaration (Можно перевести как "объявление структурированной привязки") и позволяет объявлять сразу группу переменных (возможно даже разного типа) при наличии инициализирующего выражения. В качестве этого выражения в примере используется функция f
Рассмотрим несколько примеров использования:
#include
#include
#include
#include
Комментариев нет:
Отправить комментарий