Некоторые новые возможности, которые появились в стандартной библиотеке C++ после C++11:
- Лямбда-выражения. 5 Это безымянные функции, для которых можно определять видимость переменных. 5 Лямбда-выражения часто используются как функции-компараторы. 5
- Ключевое слово auto. 5 Оно позволяет автоматически определять тип данных на этапе компиляции программы. 5
- Метод emplace_back. 4 У различных контейнеров, таких как vector, этот метод конструирует новый элемент непосредственно в памяти коллекции, используя все переданные аргументы как параметры конструктора. 4
- Тип данных std::byte. 4 Он занимает ровно один байт и замещает char / unsigned char, предлагая более строгую и семантически правильную типизацию. 4
- Тип данных stringview. 4 В C++17 появился шаблон std::basicstringview и специализации stringview, wstring_view. 4
- Новые перегрузки алгоритма search и объекты searcher. 4 В предыдущих стандартах C++ алгоритмы search и search_n выполняли поиск «в лоб», без оптимизаций по алгоритмам Бойера-Мура или Бойера-Мура-Хорспула. 4
- Вывод параметра шаблона класса. 5 С C++17 компилятор может сам определять типы аргументов конструкторов стандартных классов, раньше это работало лишь для функций. 5