Треки
/
C++
C++
/
Салабус
/
Ключове слово `auto`
Кл

Ключове слово `auto` у C++

1 вправа

Про концепцію Ключове слово `auto`

Ключове слово auto у C++

У C++ ключове слово auto - потужна можливість, яка зʼявилася в C++11 і дозволяє оголошувати змінні з виведеним типом даних. Компілятор виводить тип змінної з її ініціалізатора, завдяки чому код стає зрозумілішим і його легше підтримувати.

Приклад використання

Розгляньмо приклад, де auto використовують для оголошення змінних:

auto dragon_population{3};          // dragon_population is deduced as an integer
auto westeros{7.7777};              // westeros is deduced as a double
auto wedding_location{"The Twins"}; // wedding_location is deduced as a const char*, not std::string

У кожному з цих випадків тип змінної виводиться зі значення, яким її ініціалізовано.

Виведення типу

Ключове слово auto допомагає писати лаконічніший і зрозуміліший код, позбавляючи від потреби щоразу вказувати тип явно.

const std::vector<std::string> pigeon_pie{"flour", "butter", "pigeon", "salt"};
auto purple_wedding_pie{pigeon_pie};
purple_wedding_pie.emplace_back("the strangler");

У цьому циклі auto виводить тип purple_wedding_pie як std::vector<std::string>, що позбавляє потреби знову вказувати тип явно.

Сумісність

Ключове слово auto сумісне з різними конструкціями C++, що робить його універсальним інструментом у сучасному програмуванні на C++.

auto& element{array[0]};           // reference to an element
const auto object{otherObject};    // const type version of otherObject's type
auto* ptr{&x};                     // pointer to x with the same type as x, but as a pointer.

У наступних концептах ми будемо часто бачити ключове слово auto з лямбда-виразами, циклами for на основі діапазону та ітераторами.

Випадки використання

  • Узагальнене програмування: auto особливо корисне в задачах узагальненого програмування, де типи бувають складними або повʼязаними з шаблонами.
  • Складені типи даних: коли ми маємо справу зі складеними типами даних або довгими назвами типів, auto зменшує нагромадження і полегшує підтримку коду.
  • Алгоритми на основі ітераторів: auto спрощує використання ітераторів в алгоритмах і робить код зрозумілішим.
Редагувати через GitHub Посилання відкривається в новому вікні або вкладці

Вивчити концепцію Ключове слово `auto`

Практика заблокована

Розблокуйте ще 1 вправу, щоб практикувати концепцію Ключове слово `auto`