Modernes C++ programmieren

Okt 23, 2024

lst-0718-godb.cpp

//#(compile) c++; compiler:g132; options:-O3 -std=c++23; libs:-
// https://godbolt.org/z/6ahzhdjva 
vector vokale { 'A', 'e', 'i', 'o', 'u' };
const vector gerade { '0', '2', '4', '6', '8' };
auto it1 = vokale.begin();                 // vector<char>::iterator
*it1 = 'a';                                // '*it1' liefert 'char&' zurück
auto it2 = gerade.begin();                 // vector<char>::const_iterator
auto it3 = vokale.cbegin();                // erzwingt const_iterator
*i2 = '9'; *i3 = 'x';                      //                                          (ERR)  'const char&' ist nicht veränderbar
for(auto it=vokale.cbegin()+1; it!=vokale.cend(); ++it)
    { cout << *it; } cout << '\n';         // Ausgabe: eiou
for(auto it=vokale.crbegin()+1; it!=vokale.crend(); ++it) // ++ trotz reverse!
    { cout << *it; } cout << '\n';         // Ausgabe: oiea