Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Скидка до 20% на услуги дата-центра. Аренда серверной стойки. Colocation от 1U!

Миграция в облако #SotelCloud. Виртуальный сервер в облаке. Выбрать конфигурацию на сайте!

Виртуальная АТС для вашего бизнеса. Приветственные бонусы для новых клиентов!

Виртуальные VPS серверы в РФ и ЕС

Dedicated серверы в РФ и ЕС

По промокоду CITFORUM скидка 30% на заказ VPS\VDS

VPS/VDS серверы. 30 локаций на выбор

Серверы VPS/VDS с большим диском

Хорошие условия для реселлеров

4VPS.SU - VPS в 17-ти странах

2Gbit/s безлимит

Современное железо!

Объявлено о готовности международного стандарта C++14

Объявлено о готовности нового международного стандарта для языка программирования Си++ - ISO/IEC 14882:2014(E), известного также под именем C++14. В настоящее время стандарт прошёл утверждение и перешёл на стадию подготовки документа к публикации, на которой будет проведена работа по редакторской правке орфографических ошибок и опечаток.

Новый стандарт не содержит кардинальных изменений и рассматривается в качестве корректирующего расширения стандарта C++11, предлагающего ряд улучшений и дополнений. C++14 примечателен самым коротким сроком подготовки спецификации (C++11 развивался более 10 лет) и обеспечением поддержки в компиляторах к моменту фактического выпуска стандарта (на обеспечение поддержки C++11 в популярных компиляторах было потрачено несколько лет). В частности, полноценная поддержка C++14 уже реализована в LLVM/Clang 3.4, а частичная поддержка C++14 доступна для пользователей GCC, IBM C++ и Microsoft C++.

Основные новшества:

  • Улучшения в языке:
    • Возможность указания чисел в двоичном представлении и наглядного отделения цифр в числе, например, теперь можно указать "a = 0b101010;" или "a = 0b100'0001;";
    • Поддержка автоматического определения типа, возвращаемого любой функцией, в которой используется несколько выражений return, содержащих значение одного типа. В С++11 определение типов было ограничено лямбда-функциями, содержащими только один вызов return;
    • Реализован дополнительный синтаксис определения типа - decltype(auto), который можно использовать для определения результирующего типа возвращаемого функцией значения (например, "string lookup1(); decltype(auto) look_up_a_string_1() { return lookup1(); }");
    • Поддержка захвата переменных лямбда-функций с возможностью захватывать переменные с перемещением значения и объявлять произвольные локальные переменные в лямбда-объекте;
    • Возможность указания типа "auto" для лямбда-выражений, позволяющего вынести определение типа на плечи компилятора по аналогии с вычислением типов переменных, объявленных с указанием ключевого слова "auto";
    • Поддержка задания шаблонов для переменных, в дополнение к ранее поддерживаемым шаблонам для функций и классов;
    • Расширение числа возможностей, которые можно использовать внутри функций constexpr. В частности, C++14 позволяет объявлять локальные переменные и использовать выражения if, switch, for, while, do-while, допускает мутацию объектов;
    • Добавлен атрибут "[[deprecated]]", при помощи которого можно пометить элемент устаревшим, после чего останется возможность использования этого элемента, но будут выводиться предупреждения, что в будущем его поддержка может быть прекращена.
  • Улучшения в стандартной библиотеке:
    • Поддержка разделяемых мьютексов (shared_mutex) и разделяемых блокировок (shared_lock);
    • Возможность определения пользователем собственных литералов для std::types, которые не могут использоваться в стандартной библиотеке. Из добавленных стандартных литералов отмечаются "s" (для строковых типов std::basic_string), "h", "min", "s", "ms", "us" и "ns" (для временных интервалов std::chrono::duration);
    • Поддержка выражения make_unique для объектов unique_ptr, похожего по сути на make_shared, но без добавления оптимизаций;
    • Добавлены псевдонимы "*_t" для трансформации типов, позволяющие уйти от использования многословных объявлений c typename (remove_reference_t вместо "typename remove_reference", make_unsigned_t вместо typename make_unsigned и т.п.);
    • Возможности обращения к элементам кортежа по типу, при условии, что в кортеже содержится только один элемент данного типа.

OpenNET

Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

✅ Дешевый VPS-хостинг на AMD EPYC: 1vCore, 3GB DDR4, 15GB NVMe всего за €3,50!

🔥 Anti-DDoS защита 12 Тбит/с!

VPS в 21 локации

От 104 рублей в месяц

Безлимитный трафик. Защита от ДДоС.

🔥 VPS до 5.7 ГГц под любые задачи с AntiDDoS в 7 локациях

💸 Гифткод CITFORUM (250р на баланс) и попробуйте уже сейчас!

🛒 Скидка 15% на первый платеж (в течение 24ч)

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 7861149
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...