Modernes C++ programmieren

Okt 23, 2024

lst-0735-godb.cpp

//#(compile) c++; compiler:g132; options:-O3 -std=c++23; libs:-
// https://godbolt.org/z/P6MrKfaj9 
#include <vector>
#include <string>
struct Praesident {
  std::string name_; int jahr_;
  Praesident(std::string name,  int jahr)    // name ist by Value
    : name_{std::move(name)}, jahr_{jahr}    // move spart hier eine weitere Kopie
    { }
};
int main() {
    using namespace std; // Stringliterale ermöglichen
    vector<Praesident> praesidenten{};
    praesidenten.emplace_back("Heuss"s, 1949);
    praesidenten.emplace_back("Luebke"s, 1959);
    praesidenten.emplace_back("Heinemann"s, 1969);
    // 
    vector<int> v{};
    v.reserve(100);
    for(int idx = 0; idx < 100; ++idx)
        v.push_back(idx);
    // 
}