Автоматичне Виведення Типу
Свайпніть щоб показати меню
Хоча C++ є мовою зі статичною типізацією, можна використовувати auto, щоб дозволити компілятору визначити тип змінної під час ініціалізації. Ця можливість була введена у C++11 і недоступна у попередніх версіях.
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; }
Хоча це може зекономити час і зробити код більш лаконічним, це також може приховати очікуваний тип, ускладнюючи виявлення помилок.
main.cpp
1234567891011#include <iostream> int main() { auto num1 = 9; auto num2 = 12; auto num3 = 15000; auto calculations = num1 / num2 * num3; std::cout << calculations; }
Вказування типів допомагає краще розуміти код і знаходити помилки:
main.cpp
1234567891011#include <iostream> int main() { float num1 = 9; float num2 = 12; float num3 = 15000; float calculations = num1 / num2 * num3; std::cout << calculations; }
Будь-яка з num1, num2 або num3 повинна бути типу float, щоб отримати коректний результат.
Тим не менш, auto широко використовується в циклах for з діапазоном, оскільки це універсальний спосіб ітерування по масивах та інших контейнерах. Просто використовуйте наступний синтаксис для ітерування по arr:
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 << " "; }
Його також можна використовувати, коли тип є довгим для написання, але зрозумілий з контексту і не може призвести до некоректних результатів.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат