//#(compile) c++; compiler:g132; options:-O3 -std=c++23; libs:-
// https://godbolt.org/z/6sYGnqnTj
#include <vector>
#include <string>
#include <iostream>
#include <string_view>
using std::string; using std::string_view; using std::vector; using std::cout;
int get_len(string_view str) { return str.size(); } // string_view als Parameter
int main() {
string s1 = "Hallo"; // einfach mit Stringliteral
string s2{'H','a','l','l','o'}; // oder mit Liste von char
using namespace std::literals; // für ""s-Suffix und ""sv-Suffix
auto s3 = "Hallo"s; // noch einfacher mit echtem Stringliteral
vector<char> v1{"Hallo"}; // (ERR) kein vector mit Stringliteral
vector<char> v2{'H','a','l','l','o'}; // Liste von char ist okay
cout << s1 << s2 << s3 << '\n'; // Ausgabe von string geht
cout << v1 << v2 << '\n'; // (ERR) vector hat keine Ausgabe
const auto str = "String"s; // Stringliteral
const auto strv = "String-View"sv; // String-View-Literal
cout << "Laenge von 'str' ist " << get_len(str) << '\n'; // Ausgabe: … 6
cout << "Laenge von 'strv' ist " << get_len(strv) << '\n'; // Ausgabe: … 11
}