Automatische Typableitung
Swipe um das Menü anzuzeigen
Obwohl C++ eine statisch typisierte Sprache ist, kann mit auto der Compiler den Typ einer Variablen während der Initialisierung ableiten. Diese Funktion wurde in C++11 eingeführt und ist in älteren Versionen nicht verfügbar.
main.cpp
12345678910#include <iostream> int main() { auto num = 9; auto str = "I am string"; std::cout << num << std::endl; std::cout << str << std::endl; }
Dies kann zwar Zeit sparen und den Code übersichtlicher machen, jedoch auch den beabsichtigten Typ verschleiern, wodurch Fehler schwerer zu erkennen sind.
main.cpp
1234567891011#include <iostream> int main() { auto num1 = 9; auto num2 = 12; auto num3 = 15000; auto calculations = num1 / num2 * num3; std::cout << calculations; }
Die Angabe von Typen erleichtert das Verständnis des Codes und das Auffinden von Fehlern:
main.cpp
1234567891011#include <iostream> int main() { float num1 = 9; float num2 = 12; float num3 = 15000; float calculations = num1 / num2 * num3; std::cout << calculations; }
Mindestens einer der Werte num1, num2 oder num3 sollte vom Typ float sein, um das korrekte Ergebnis auszugeben.
Nichtsdestotrotz wird auto häufig in bereichsbasierten for-Schleifen verwendet, da es eine vielseitige Methode zum Iterieren über Arrays und andere Container darstellt. Verwenden Sie einfach die folgende Syntax, um über arr zu iterieren:
main.cpp
auto.h
123456789#include <iostream> int main() { int num_arr[5] = {1, 5, 10, 15, 20}; for (auto num : num_arr) std::cout << num << " "; }
Es kann auch verwendet werden, wenn der Typ lang zu schreiben ist, aber aus dem Kontext klar hervorgeht und nicht zu falschen Ergebnissen führen kann.
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen