Automatische Typableitung
Obwohl C++ eine statisch typisierte Sprache ist, können Sie auto
verwenden, um den Compiler den Typ einer Variablen während der Initialisierung ableiten zu lassen. 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; }
Während dies Zeit sparen und den Code prägnanter machen kann, kann es auch den beabsichtigten Typ verschleiern, was es schwieriger macht, Fehler zu erkennen.
main.cpp
1234567891011#include <iostream> int main() { auto num1 = 9; auto num2 = 12; auto num3 = 15000; auto calculations = num1 / num2 * num3; std::cout << calculations; }
Das Angeben von Typen würde uns helfen, den Code besser zu verstehen und Fehler zu finden:
main.cpp
1234567891011#include <iostream> int main() { float num1 = 9; float num2 = 12; float num3 = 15000; float calculations = num1 / num2 * num3; std::cout << calculations; }
Hinweis
Einer von
num1
,num2
odernum3
solltefloat
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 ist. 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 ist 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
Awesome!
Completion rate improved to 4.35
Automatische Typableitung
Swipe um das Menü anzuzeigen
Obwohl C++ eine statisch typisierte Sprache ist, können Sie auto
verwenden, um den Compiler den Typ einer Variablen während der Initialisierung ableiten zu lassen. 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; }
Während dies Zeit sparen und den Code prägnanter machen kann, kann es auch den beabsichtigten Typ verschleiern, was es schwieriger macht, Fehler zu erkennen.
main.cpp
1234567891011#include <iostream> int main() { auto num1 = 9; auto num2 = 12; auto num3 = 15000; auto calculations = num1 / num2 * num3; std::cout << calculations; }
Das Angeben von Typen würde uns helfen, den Code besser zu verstehen und Fehler zu finden:
main.cpp
1234567891011#include <iostream> int main() { float num1 = 9; float num2 = 12; float num3 = 15000; float calculations = num1 / num2 * num3; std::cout << calculations; }
Hinweis
Einer von
num1
,num2
odernum3
solltefloat
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 ist. 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 ist und nicht zu falschen Ergebnissen führen kann.
Danke für Ihr Feedback!