Bereichsschleifen in C++
(Diese Lektion wurde noch nicht ausformuliert, es handelt sich nur um eine kurze Notiz zum Thema.)
Es kann alles mit einem Anfang (cbegin) und einem Deckel (cend) als Folge (sequence) angegeben werden.
Bereichsschleifen mit Kopieren
for( auto const item : sequence )
for( auto item : sequence )
main.cpp
#include <iostream>
#include <ostream>
int main()
{ ::std::initializer_list< int >const il{ 1, 2, 3 };
::std::initializer_list< char >const cl{ 'a', 'b', 'c' };
for( auto const x : il )::std::cout << x << ' '; ::std::cout << '\n';
for( auto const x : cl )::std::cout << x << ' '; ::std::cout << '\n'; }
transcript
1 2 3
a b c
Bereichsschleifen mit Binden
for( auto const & item : sequence )
for( auto & item : sequence )
main.cpp
#include <initializer_list>
#include <iostream>
#include <ostream>
#include <string>using namespace ::std::literals;
int main()
{ for( auto const & s :{ "Gurken", "Spinat", "Kohlrabi" })
::std::cout << "Tomaten\nRotkohl Gruenkohl\n"s + s << '\n'; }::std::cout
Tomaten
Rotkohl Gruenkohl
Gurken
Tomaten
Rotkohl Gruenkohl
Spinat
Tomaten
Rotkohl Gruenkohl
Kohlrabi