[C++, Программирование] ИСО одобрила С++ 20, стандарт будет опубликован к концу года

Автор Сообщение
news_bot ®

Стаж: 6 лет 9 месяцев
Сообщений: 27286

Создавать темы news_bot ® написал(а)
08-Сен-2020 13:32


Международная организация по стандартизации (ИСО) одобрила C++ 20, последнюю версию объектно-ориентированного языка программирования. Официальный стандарт опубликуют ближе к концу 2020 года.
Новая версия C++ выходит каждые три года, ей присваивают номер года, поэтому C++ 20 является преемником C++ 17.

В C++ 20 появились четыре ключевых новых функции:
  • Модули. Исходный код, который компилируется один раз, а затем повторно используется в виде двоичного файла. Они являются более быстрой альтернативой заголовочным файлам, изолируют код и улучшают время компиляции. Бьёрн Страуструп, создатель C++, говорил, что модули должны улучшить время компиляции в 5-10 раз.
  • Концепции. По словам Страуструпа, это предикаты времени компиляции, которые позволяют устранить необходимость в большом количестве метапрограммирования.
  • Библиотека диапазонов. Зависимые от понятий, диапазоны абстрактных коллекций.
  • Сопрограммы, функции, которые могут приостановить выполнение, чтобы быть возобновленными позже. Используются для асинхронного программирования.

Контракты, функцию, которая когда-то была запланирована в C++ 20, пока реализовать не удалось.
Страуструп уже отметил, что в C++ 23 добавят стандартные модули, поддержку библиотек для сопрограмм, исполнители (ключевая функция для параллелизма) и многое другое.
Он выступал за то, чтобы начать с простых и элегантных функций и не беспокоиться о частях языка, которые могут служить только для обратной совместимости. Бремя обратной совместимости ложится на разработчиков, а не на пользователей, и именно так оно и должно быть, отмечал Страуструп. Одна из целей, по его словам, состоит в том, чтобы уменьшить потребность в шаблонном метапрограммировании, а хороший код C++ должен быть легко понятен.
Основные компиляторы C++ еще не реализуют всё в C++ 20. Список того, что реализовано в Clang, находится здесь, а в GCC — здесь (пока нет поддержки модулей). Последняя версия Visual C++ поддерживает некоторые функции C++ 20 при использовании с флагами, такими как /experimental:module и /std:c++latest. С таблицей состояния соответствия компиляторов можно ознакомиться здесь.
C++ занимает пятое место по популярности в рейтинге языков Redmonk. В рейтинге Института инженеров электротехники и электроники (IEEE) за 2020 год он оказался на четвертой позиции.
===========
Источник:
habr.com
===========

Похожие новости: Теги для поиска: #_c++, #_programmirovanie (Программирование), #_c++20, #_iso, #_jazyki_programmirovanija (языки программирования), #_standarty (стандарты), #_c++, #_programmirovanie (
Программирование
)
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 22-Ноя 23:36
Часовой пояс: UTC + 5