С++17 еще не вышла, но уже есть перечень «фич» которые собираются добавить в этот новый стандарт. Так как С++14 был неким расширением С++11, исправлением ошибок и улучшений. То С++17 будет неким расширением С++14.
C++14 дала нам возможность использовать ключевое слово “auto” в lambdas. А стандарт С++17 даст нам возможность использовать слово “auto “ в template параметрах. Это более удобнее и еще занимает меньше кода, чем класс или “typename”. И еще это даст возможность использовать “templates” с разным числом параметров (например template<auto... a>).
Теперь вместо постоянного использования std::tie для tuple и pair, чтобы задать разные значения параметров. Можно, будет объявить и проинициализировать все переменные в одну строчку (например
auto [a , b , c] = getvalues(); ).
И также можно будет объявить переменные внутри if выражения ( например if(int x = 42; true != false) ), что также сократит количество строк кода, но также даст возможность ограничить область видимости объявленных переменных. И кстати, их можно будет видеть внутри блока else!
Также добавят std::variant. Это круто, так как теперь не надо будет использовать variant с других библиотек, как например boost::variant. У них будет похожий API .
Также будут новые методы вставки в уже стандартных std::map и std::unordered_map.
Также будет возможность распараллелить что-то из коробки. Раньше для этого нужно было использовать какие-то сторонние библиотеки. Их, скорей всего, будут продолжать использовать, так как каждая из них имеет свои преимущества.
А чего не будет:
Может в следующем стандарте будет. Это бы уменьшило количество include, уменьшило количество зависимостей от препроцессора. Но такого пока не будет.
Может в следующем стандарте будет. Это механизм управления параллелизмом, который используется для совместного доступа к памяти в параллельных вычислениях. Но есть boost в котором это есть.
И много другого.
С++ поменяется, но не сильно. Это как-бы расширение того, что было. Комитет ISO C++ работает, и большие изменения требуют рассмотрения, поэтому ждем.