Будет ли TR2 выпущен в C++17?

В TR2 много приятного. Это будет в C++ 17?

Я понимаю, что TR1 был завершен в 2005 году и должен был ждать стандартизации C++11. Но я также понимаю, что TR2 уже завершена?

В моей ссылке на C++ 17 ничего не говорится о TR2, но я надеюсь...

3 ответа

Решение

Может быть.

Смысл TR (а теперь и технических спецификаций) состоит в том, чтобы позволить чему-то созревать независимо от стандартного итерационного процесса. Они могут опубликовать TS, посмотреть, как он работает, посмотреть, есть ли какие-либо проблемы в реализации и / или использовании функции, и если все работает, они могут затем "свернуть" ее в полный стандарт.

Каждый TS рассматривается по существу, чтобы увидеть, будет ли он включен в следующий стандарт.

См. http://isocpp.org/std/status (спасибо @BenjaminLindley) для текущего статуса рабочих групп Технической спецификации.

Любой из них, если он будет завершен задолго до 2017 года, может быть включен в стандарт. Вряд ли они все будут.

Цель состоит в том, чтобы мы могли получить std::experimental функции, с которыми можно поиграть (и использовать, если мы готовы принять сдвиг земли под ногами) ранее, при этом добавив эти функции к std с меньшим количеством сожалений и изменений спецификации после этого момента. Вероятно, есть и огромные организационные издержки, связанные с разделением основного стандарта от каждого из этих побочных проектов и предоставлением им возможности развиваться независимо.

Цель Технического отчета или Технической спецификации в том виде, в каком они есть сейчас, состоит в том, чтобы получить опыт внедрения и отзывы разработчиков и пользователей, чтобы лучше оценить пригодность функций для стандартизации. Нужно было бы хрустальный шар, чтобы знать, будет ли конкретный TS будет включен в будущий стандарт, и какой будущий стандарт это может быть.

Версия 1 Основ библиотечных документов TS, по- видимому, прошла окончательное голосование на заседании комитета в ноябре 2014 года, а версия 2 в настоящее время разрабатывается с учетом отзывов и новых предложений. Это означает, что он становится ближе к тому, чем довольны разработчики и пользователи отрасли, и версия 1 теперь является неизменной спецификацией, которую разработчики могут выбрать для соответствия. Для более поздних версий и более поздних стандартов все еще более чем возможно измениться способами, которые были бы несовместимы с версией 1.

Вот список (из вашей ссылки в Википедии) функций TR2 - и мои комментарии:

  • Темы - включены в C++11
  • Библиотека Asio C++ - это рассматривается для будущего стандарта C++
  • Сигналы / Слоты - в настоящее время никаких действий (о которых я знаю)
  • Библиотека файловой системы - Техническая спецификация файловой системы
  • Boost Any Library - Техническая спецификация основы библиотеки
  • Библиотека лексических преобразований - в настоящее время никаких действий (о которых я знаю)
  • Новые строковые алгоритмы - в настоящее время никаких действий (о которых я знаю)
  • На пути к более полной таксономии алгебраических свойств для числовых библиотек в TR2 - в настоящее время никаких действий (о которых я знаю)
  • Добавление поиска гетерогенного сравнения в ассоциативные контейнеры для TR2 - * Включено в C++14*
Другие вопросы по тегам