Modernes C++ programmieren

Okt 23, 2024

lst-0733-book.cpp

// https://godbolt.org/z/6Ez5GdozG 
#include <vector>
#include <span>
#include <iostream>
using namespace std;
void inc(span<int> span) {
   for(auto& e :span) {  // Referenz
     e += 1;             // schreiben
   }
}
int main() {
    vector data {1,2,3,4,5};
    span ganz{data};              //    1,2,3,4,5
    inc(ganz.first(3));           // -> 2,3,4,4,5
    inc(ganz.last(3));            // -> 2,3,5,5,6
    inc(ganz.last(4).first(3));   // -> 2,4,6,6,6
    inc(ganz.subspan(1,3));       // -> 2,5,7,7,6
    for(auto i: ganz) cout << i << ' '; cout << '\n'; // Ausgabe: 2 5 7 7 6
    return 0;
}