Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Automaattinen Tyyppipäättely | Muut Tietotyypit ja Käsitteet
Practice
Projects
Quizzes & Challenges
Visat
Challenges
/
C++ Tietotyypit

bookAutomaattinen Tyyppipäättely

Pyyhkäise näyttääksesi valikon

Vaikka C++ on staattisesti tyypitetty kieli, voit käyttää auto-avainsanaa, jolloin kääntäjä päättelee muuttujan tyypin alustuksen yhteydessä. Tämä ominaisuus otettiin käyttöön C++11-versiossa, eikä se ole saatavilla vanhemmissa versioissa.

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

Vaikka tämä voi säästää aikaa ja tehdä koodista tiiviimpää, se voi myös hämärtää aiotun tyypin, jolloin virheiden havaitseminen vaikeutuu.

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

Tyyppien määrittely auttaa ymmärtämään koodia paremmin ja löytämään virheet:

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
Huomautus

Jokaisen num1, num2 tai num3 tulisi olla float, jotta tulos olisi oikea.

Siitä huolimatta auto on laajasti käytössä aluepohjaisissa for-silmukoissa, koska se on monipuolinen tapa käydä läpi taulukoita ja muita säiliöitä. Käytä seuraavaa syntaksia iteroidaksesi arr-taulukon yli:

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

Sitä voidaan käyttää myös silloin, kun tyyppi on pitkä kirjoittaa, mutta on selvä kontekstista eikä voi johtaa virheellisiin tuloksiin.

question mark

Mikä on auto-avainsanan päätarkoitus C++:ssa?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 4. Luku 4

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Osio 4. Luku 4
some-alt