Modernes C++ programmieren

Okt 23, 2024

lst-0620-godb.cpp

//#(compile) c++; compiler:g132; options:-O3 -std=c++23; libs:-
// https://godbolt.org/z/3ch51ov87 
#include <set>
#include <string>
#include <iostream> // cout
using std::string; using std::set; using std::cout;
struct Zwerg {
    string name_;
    unsigned jahr_;
};
bool operator<(const Zwerg& a, const Zwerg& b) {
    return a.name_ < b.name_;
}
int main() {
    set zwerge{ Zwerg{"Balin", 2763}, Zwerg{"Dwalin", 2772},
        Zwerg{"Oin", 2774}, Zwerg{"Gloin", 2783}, Zwerg{"Thorin", 2746},
        Zwerg{"Fili", 2859}, Zwerg{"Kili", 2864} };
    for(const auto& z : zwerge) // sortierte Ausgabe: "Balin" bis "Thorin"
        cout << z.name_  << " ";
    cout << "\n";
}