Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Automatisk Typeutledning | Seksjon
C++ Datatyper

bookAutomatisk Typeutledning

Sveip for å vise menyen

Selv om C++ er et statisk typet språk, kan du bruke auto for å la kompilatoren utlede typen til en variabel under initialisering. Denne funksjonen ble introdusert i C++11 og er ikke tilgjengelig i eldre versjoner.

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; }

Selv om dette kan spare tid og gjøre koden mer konsis, kan det også skjule den tiltenkte typen, noe som gjør feil vanskeligere å oppdage.

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; }

Å spesifisere typer hjelper oss å forstå koden bedre og finne ut hva som er feil:

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
Merk

Minst én av num1, num2 eller num3 må være float for å gi riktig resultat.

Likevel brukes auto mye i områdebaserte for-løkker, siden det er en allsidig metode for å iterere over arrayer og andre beholdere. Bruk følgende syntaks for å 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å brukes når typen er lang å skrive, men er tydelig ut fra konteksten og ikke kan føre til feilaktige resultater.

question mark

Hva er hovedformålet med nøkkelordet auto i C++?

Velg det helt riktige svaret

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 1. Kapittel 14

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Seksjon 1. Kapittel 14
some-alt