auto kalit so'zi
auto kalit so'zi o'zgaruvchining turini siz unga tayinlagan qiymatga qarab avtomatik ravishda aniqlaydi.
Bu sizga tozaroq kod yozishga va turlarni takrorlashdan qochishga yordam beradi, ayniqsa uzun yoki murakkab turlar bilan ishlaganda.
Masalan: int x = 5; deb yozish o'rniga quyidagicha yozishingiz mumkin:
MISOL
auto x = 5; // x avtomatik ravishda int deb hisoblanadiMA'LUMOT
C++11 standartidan boshlab, auto kompilyatorga tayinlangan qiymat asosida turni aniqlashga ruxsat beruvchi kuchli vositaga aylandi.
Turli xil turlar bilan misol
Quyida auto dan foydalanib, tayinlangan qiymatlar asosida har xil turdagi o'zgaruvchilar yaratish misoli keltirilgan:
MISOL
// auto o'zgaruvchilarini yaratish
auto myNum = 5; // int
auto myFloatNum = 5.99f; // float
auto myDoubleNum = 9.98; // double
auto myLetter = 'D'; // char
auto myBoolean = true; // bool
auto myString = string("Salom"); // std::stringMUHIM ESLATMALAR
autofaqat e'lon qilish vaqtida qiymat tayinlangandagina ishlaydi (Siz qiymat bermasdanauto x;deb e'lon qila olmaysiz).- Tur bir marta aniqlangandan so'ng, u o'zgarmas bo'lib qoladi. Quyidagi misolni ko'ring:
auto x = 5; // x hozirda int
x = 10; // TO'G'RI - hali ham int
x = 9.99; // XATO - int turiga double qiymat berib bo'lmaydiEslatma: Ushbu qo'llanmada, agar tur sodda va tushunarli bo'lsa, odatda int, double kabi asosiy turlardan foydalanamiz.
Biroq, iteratorlar va lambda ifodalari kabi murakkabroq turlar uchun kodni toza va tushunarli saqlash maqsadida auto dan foydalanish tavsiya etiladi.
