Учебный трек

Возможности современного C++

Перегрузка, лямбды, шаблоны, STL, классы и RAII - инструменты, которые делают C++ больше, чем C.

Уроков: 8 · Задач: 10

Начать трек →
  1. Урок Задач: 1 Перегрузка функций в C++ и альтернатива в C В этом уроке вы с помощью перегрузки функций (function overloading) в C++ сделаете так, чтобы одно имя функции работало с разными типами, и сравните это с подходом C.
  2. Урок Задач: 1 Указатели на функции и обратные вызовы в C и C++ В этом уроке вы передадите функцию как параметр в другую функцию: через указатели на функции в C и лямбды в C++.
  3. Урок Задач: 1 Лямбды в C++ и передача контекста в обратные вызовы в C В этом уроке вы с помощью лямбд C++ передадите локальные данные в обратный вызов и сравните это с передачей контекста через указатель void в C.
  4. Урок Задач: 2 Шаблоны в C++ и обобщённое программирование в C В этом уроке вы напишете функцию для нескольких типов данных с помощью шаблонов C++ и сравните её с _Generic из C11.
  5. Урок Задач: 2 Контейнеры и алгоритмы STL в C++ В этом уроке вы сравните циклы, написанные вручную для обработки массива на C, с комбинацией готовых алгоритмов стандартной библиотеки C++.
  6. Урок Задач: 1 Объектно-ориентированное программирование (ООП) Изучите инкапсуляцию, наследование и полиморфизм в C++ в сравнении с явной реализацией на C.
  7. Урок Задач: 1 Полиморфизм в C++ и таблицы указателей на функции в C В этом уроке вы вызовете одну и ту же операцию для объектов разных типов: через виртуальные функции в C++ и указатели на функции в C.
  8. Урок Задач: 1 RAII и автоматическое освобождение ресурсов в C++ В этом уроке вы сравните безопасное закрытие файла в C с приёмом RAII в C++, где ресурсы освобождаются автоматически.