Диапазоны TS ломают изменения?
Говорят, что инъекция Ранг TS в std
Пространство имен вызовет ряд критических изменений в стандартной библиотеке (например, эта ссылка). Кто-нибудь знает, что это за изменения?
1 ответ
Из Приложения B N4569 (как связано @Holt в комментариях выше):
Типы возвращаемых алгоритмов - изменены, чтобы включить конечный итератор
Сильные ограничения - алгоритмы, которые раньше требовали только
<
теперь требуются все операторы сравненияОграниченные функциональные объекты - ограничения добавлены к
std::less
Тип и тому подобное.Iterators и Default-Constructibility - Ranges_v3 предполагает, что итераторы могут быть построены по умолчанию (полезным способом). Это в настоящее время не требуется.
iterator_traits
не может быть специализированным - в Range_v3 это шаблон псевдонима.N3351 - он также несовместим с предложением N3351 по ряду причин, которые я не буду здесь рассматривать.
Это просто резюме. Перейдите по ссылке на статью или найдите ее для более подробной информации.