cpp / intermediate
Snippet
Bereichsbasierte Schleife mit strukturierten Bindungen
Strukturierte Bindungen (C++17) ermöglichen es, komplexe Datentrukturen wie Pairs oder Tuples direkt in einzelne Variablen innerhalb eines Schleifenkopfs zu entpacken. Dies verbessert die Lesbarkeit bei der Iteration über assoziative Container wie Maps erheblich.
snippet.cpp
cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>#include <map>#include <string>int main() {std::map<std::string, int> inventory = {{"Apples", 50}, {"Oranges", 30}};// Structured bindings unpack map pairs into named variablesfor (const auto& [item, count] : inventory) {std::cout << item << ": " << count << " in stock" << std::endl;}return 0;}
Erklärung
1
for (const auto& [item, count] : inventory)
Iteriert durch die Map und bindet den Schlüssel an 'item' und den Wert an 'count'.