auto in C++In C++ ist das Schlüsselwort auto ein mächtiges Feature, das in C++11 eingeführt wurde. Damit kannst du Variablen mit einem abgeleiteten Datentyp deklarieren.
Der Compiler leitet den Typ der Variable aus ihrem Initialisierungswert ab, was den Code lesbarer und leichter wartbar machen kann.
Schauen wir uns das folgende Beispiel an, in dem auto zum Deklarieren von Variablen verwendet wird:
auto dragon_population{3}; // dragon_population is deduced as an integer
auto westeros{7.7777}; // westeros is deduced as a double
auto wedding_location{"The Twins"}; // wedding_location is deduced as a const char*, not std::string
In jedem Fall wird der Typ der Variable aus dem Wert abgeleitet, mit dem sie initialisiert wird.
Das Schlüsselwort auto hilft dir, prägnanteren und besser lesbaren Code zu schreiben, weil du explizite Typen seltener ausschreiben musst.
const std::vector<std::string> pigeon_pie{"flour", "butter", "pigeon", "salt"};
auto purple_wedding_pie{pigeon_pie};
purple_wedding_pie.emplace_back("the strangler");
Hier leitet auto den Typ von purple_wedding_pie als std::vector<std::string> her, sodass du den Typ nicht erneut explizit angeben musst.
Das Schlüsselwort auto ist mit verschiedenen C++-Konstrukten kompatibel und damit ein vielseitiges Werkzeug in der modernen C++-Programmierung.
auto& element{array[0]}; // reference to an element
const auto object{otherObject}; // const type version of otherObject's type
auto* ptr{&x}; // pointer to x with the same type as x, but as a pointer.
In späteren Konzepten werden wir das Schlüsselwort auto häufig zusammen mit Lambda-Ausdrücken, bereichsbasierten for-Schleifen und Iteratoren sehen.
auto ist besonders nützlich in generischen Programmier-Szenarien, in denen Typen komplex sein können oder mit Templates zusammenhängen.auto für mehr Übersicht und verbessert die Wartbarkeit des Codes.