0 Tage Serie
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 variables
for (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'.