Так что не надо переучиваться например с 11го стандарта на 20ый
[C++14]:
1 Изменения в языке
1.1 Вывод типа возвращаемого значения для функций
1.2 Альтернативный вывод типа при объявлении
1.3 Уменьшение ограничений на константные выражения
1.4 Шаблоны переменных
1.5 Агрегатная инициализация классов с инициализаторами полей
1.6 Литералы двоичных чисел
1.7 Разделители разрядов
1.8 Обобщённые лямбда-функции
1.9 Захват выражений для лямбда-функций
1.10 Атрибут [[deprecated]]
2 Новые функции стандартной библиотеки
2.1 Разделяемые мьютексы и блокировки
2.2 Гетерогенный поиск в ассоциативных контейнерах
2.3 Стандартные пользовательские литералы
2.4 Адресация к кортежам по типу
2.5 Прочие изменения стандартной библиотеки
[c++17]:
1 Удалены или запрещены
1.1 Удалены триграфы
1.2 Удалено ключевое слово register
1.3 Удалена операция ++ для bool
1.4 Удалены заявленные исключения
1.5 Удалены типы и функции, получившие замену (и ставшие запрещёнными) в Си++11
1.6 Удалены конструкторы для std::function, принимавшие аллокатор
1.7 Запрещены крайне редкие возможности стандартной библиотеки
1.8 Запреты, связанные с новыми функциями Си++17
1.9 Удалены заголовки библиотеки Си
1.10 auto x{}; больше не создаёт initializer_list
2 Глобальные изменения
2.1 Спецификация исключений — теперь часть системы типов
2.2 New с чрезмерным выравниванием
2.3 Обязательное избавление от копирования
2.4 Более строгий порядок вычисления
2.5 Расширили понятие «константа в шаблоне»
2.6 В for могут быть begin и end разного типа
3 Редакционные правки
3.1 Понятие «непрерывный итератор»
3.2 Запрещены символы u'x' и U'x', не кодируемые одним символом
3.3 Временно запрещён memory_order_consume
4 Язык
4.1 static_assert с одним аргументом
4.2 Новые стандартные аннотации
4.3 Использование typename во вложенных шаблонах
4.4 Структурное связывание
4.5 Запись namespace A::B
4.6 Аннотации для пространств имён и элементов перечисляемого типа
4.7 If при компиляции
4.8 Упрощённый синтаксис двухместной операции в переменных шаблонах
4.9 Шестнадцатеричное представление дробных чисел
4.10 Инициализация локальной переменной в if/switch
4.11 Using в атрибутах
4.12 Бестиповые параметры в шаблонах
4.13 Захват лямбда-объектом *this
4.14 Можно инициализировать enum class числом
5 Библиотека
5.1 Мелкие доработки библиотеки
5.2 Новый тип std::string_view
5.3 Размер строки кэша
5.4 Новый тип shared_mutex
5.5 Автоматическое определение типа параметра контейнера
5.6 Новые функции вставки в ассоциативный массив с неповторяющимся ключом
5.7 Новые математические функции
5.8 Библиотека файловой системы
5.9 Вариативные типы
5.10 Низкоуровневые функции преобразования число-текст
5.11 Новый тип polymorphic_allocator
5.12 Новый шаблон std::invoke
5.13 Параллельные версии алгоритмов STL
[C++20]:
2 Запрещены и удалены
2.1 Запрещены операции с volatile
2.2 Запрещена операция «,» в индексах
2.3 Удалены запреты из Си++17
3 Язык
3.1 Мелкие изменения
3.2 Модули
3.3 Сопрограммы
3.4 typename объявлен излишним там, где допустим только тип
3.5 Вычисление размера массива в new
3.6 Новые атрибуты
3.7 Расширен constexpr
3.8 Ключевые слова consteval и constinit
3.9 explicit (bool)
4 Редакционные правки
4.1 Новые условия неявного перемещения
4.2 Числа со знаком — дополнительный код
5 Библиотека
5.1 Мелкие изменения
5.2 Объявление функций constexpr
5.3 Библиотека форматирования
5.4 Невладеющие указатели на массив (span)
5.5 Библиотека работы с битами <bit>
5.6 Библиотека работы с синхронизированными «потоками вывода» <syncstream>
5.7 Библиотека диапазонов <ranges>
5.8 Библиотека календарей и часовых поясов в <chrono>
5.9 Расширенная библиотека потоков <jthread>, <stop_token>
Ну да, ваще нихуя нового, просто берешь с C++11 с двух ног залетаешь в C++20 и переучиваться не нужно совсем, всего то 9 лет какие-то люди из стандарта развивали язык.