// https://godbolt.org/z/cqoTsWbhW
#include <string>
#include <string_view>
using std::string; using sview = std::string_view;
struct Person {
string name_;
int alter_;
string ort_;
Person(); // Konstruktor ohne Argumente
Person(sview n, int a, sview o); // Konstruktor mit drei Argumenten
Person(sview n, int a); // Konstruktor mit zwei Argumenten
Person(sview n); // Konstruktor mit einem Argument
};
Person::Person()
: name_{"kein Name"}, alter_{-1}, ort_{"kein Ort"} { }
Person::Person(sview n, int a, sview o)
: name_{n}, alter_{a}, ort_{o} { }
Person::Person(sview n, int a)
: name_{n}, alter_{a}, ort_{"kein Ort"} { }
Person::Person(sview n)
: name_{n}, alter_{-1}, ort_{"kein Ort"} { }