B.4 – Введение в C++20
Добавлено 13 октября 2021 в 23:24
Что такое C++20?
В феврале 2020 года ISO (Международная организация по стандартизации) одобрила новую версию C++ под названием C++20. C++20 содержит большее количество изменений в языке даже по сравнению с C++11.
Нововведения в C++20
Вот список основных улучшений, добавленных в C++20. Обратите внимание, что этот список не является исчерпывающим, а скорее предназначен для выделения некоторых ключевых интересных улучшений.
- сокращенные шаблоны функций с помощью автоматических параметров (8.15 – Шаблоны функций с несколькими шаблонными типами);
- расширения
chrono
для поддержки календаря и часового пояса; - концепции, позволяющие накладывать ограничения на параметры шаблона;
- виртуальные функции
constexpr
,union
,try
,catch
,dynamic_cast
иtypeid
; - ключевое слово
constinit
для утверждения, что переменная имеет статическую инициализацию; - корутины (сопрограммы);
- назначенные инициализаторы;
- немедленные функции с использованием ключевого слова
consteval
; - модули, замена
#include
; - диапазоны;
std::erase
;std::make_shared
для массивов;std::map::contains();
std::span
;- библиотека форматирования строк;
- строковые литералы в качестве параметров шаблонов;
- трехстороннее сравнение с использованием оператора «spaceship» (космический корабль)
<=>
; - использование перечислений с областью видимости;
- представления (view).