Библиотека C/C++ разработчика | cpp, boost, qt
19.9K subscribers
1.88K photos
55 videos
16 files
4.09K links
Все самое полезное для плюсовика и сишника в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/d6cd2932

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17
Download Telegram
🚀 C++17: structured bindings

Structured bindings в C++17 — это не просто красивый синтаксис, это читаемость кода на новом уровне!


// Старый способ (до C++17)
std::map<std::string, int> counts;
for (auto it = counts.begin(); it != counts.end(); ++it) {
std::cout << it->first << ": " << it->second << std::endl;
}

// C++17 structured bindings
for (const auto& [key, value] : counts) {
std::cout << key << ": " << value << std::endl;
}

// Работает с парами, tuple, массивами
auto [x, y, z] = std::make_tuple(1, 2.5f, "hello");
auto [min, max] = std::minmax({5, 2, 8, 1, 9});



Код стал намного читаемее. Особенно полезно при работе с контейнерами пар и функциями, возвращающими несколько значений.


🧠 Используете ли вы structured bindings? В каких случаях они наиболее полезны?

Библиотека C/C++ разработчика #междусобойчик
👍11🔥9