Au

Auto in C++

1 Übung

Über Auto

Das Schlüsselwort 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.

Beispielhafte Verwendung

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.

Typinferenz

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.

Kompatibilität

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.

Anwendungsfälle

  • Generische Programmierung: auto ist besonders nützlich in generischen Programmier-Szenarien, in denen Typen komplex sein können oder mit Templates zusammenhängen.
  • Komplexe Datentypen: Bei komplexen Datentypen oder langen Typnamen sorgt auto für mehr Übersicht und verbessert die Wartbarkeit des Codes.
  • Iteratorbasierte Algorithmen: Es vereinfacht die Verwendung von Iteratoren in Algorithmen und verbessert die Lesbarkeit des Codes.
Über GitHub bearbeiten Der Link öffnet sich in einem neuen Fenster oder Tab

Lerne Auto

Das Üben ist gesperrt

Schalte 1 weitere Übung frei, um Auto zu üben