Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Automatisk Typeudledning | Andre Datatyper og Begreber
Practice
Projects
Quizzes & Challenges
Quizzer
Challenges
/
C++ Datatyper

bookAutomatisk Typeudledning

Stryg for at vise menuen

Selvom C++ er et statisk typet sprog, kan du bruge auto til at lade compileren udlede typen af en variabel under initialisering. Denne funktion blev introduceret i C++11 og er ikke tilgængelig i ældre versioner.

main.cpp

main.cpp

copy
12345678910
#include <iostream> int main() { auto num = 9; auto str = "I am string"; std::cout << num << std::endl; std::cout << str << std::endl; }

Selvom dette kan spare tid og gøre koden mere kortfattet, kan det også skjule den tilsigtede type, hvilket gør fejl sværere at opdage.

main.cpp

main.cpp

copy
1234567891011
#include <iostream> int main() { auto num1 = 9; auto num2 = 12; auto num3 = 15000; auto calculations = num1 / num2 * num3; std::cout << calculations; }

Angivelse af typer bidrager til bedre forståelse af koden og identificering af fejl:

main.cpp

main.cpp

copy
1234567891011
#include <iostream> int main() { float num1 = 9; float num2 = 12; float num3 = 15000; float calculations = num1 / num2 * num3; std::cout << calculations; }
Note
Bemærk

Enhver af num1, num2 eller num3 skal være float for at give det korrekte resultat.

Ikke desto mindre anvendes auto ofte i range-baserede for-løkker, da det er en alsidig metode til at iterere over arrays og andre containere. Brug blot følgende syntaks for at iterere over arr:

main.cpp

main.cpp

auto.h

auto.h

copy
123456789
#include <iostream> int main() { int num_arr[5] = {1, 5, 10, 15, 20}; for (auto num : num_arr) std::cout << num << " "; }

Det kan også bruges, når typen er lang at skrive, men er tydelig ud fra konteksten og ikke kan føre til forkerte resultater.

question mark

Hvad er hovedformålet med nøgleordet auto i C++?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 4

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Sektion 4. Kapitel 4
some-alt