Зачем учить С++?

На нем разрабатывают поиск, браузеры, backend социальных сетей и других сервисов компании по всему миру. На С++ написаны популярные библиотеки машинного обучения, он занимает важное место в области разработки компьютерных игр; в Яндексе C++ можно встретить в поиске, рекламе, браузере, картах и многих, многих других продуктах.

Почему разработчики выбирают этот язык? Если коротко — он быстрый и он развивается.

C++ позволяет вам писать эффективный код тогда, когда производительности других популярных языков (Java, Python, C#, JavaScript) оказывается недостаточно. Это актуально не только для серверных и десктопных программ, но и для мобильных устройств, где помимо скорости, нужно еще экономить батарейку.

Кроме того, возможности современного C++ позволяют вам писать надёжный и безопасный код, свободный от утечек любых ресурсов (памяти, файловых дескрипторов, сетевых подключений и т.д.). Наконец, на современном C++ можно писать простой и понятный код.

Разбираемые темы:

Модуль 1. Типы данных, операции и функции в С++

  • Ссылочный тип данных.
  • Операции — расширения контекста.
  • Операции  new и delete.
  • Встроенные inline-функции.
  • Перегрузка функций. Аргументы по умолчанию
 
Модуль 2. Инкапсуляция

  • Декларация класса.
  • Управление доступом.
  • Указатель this.
  • Дружественные классы и функции.
Модуль 3. Специальные методы класса

  • Конструктор по умолчанию.
  • Конструктор  копирования.
  • Перегрузка конструкторов.
  • Деструктор.
Модуль 4. Константные и статические члены класса

  • Константные функции и объекты.
  • Статические данные и функции.
  • Правила инициализации и использования.
Модуль 5. Перегрузка операций

  • Правила перегрузки операций в С++.
  • Примеры перегрузки основных операций.
  • Перегрузка операции присваивания и конструктора копирования.
Модуль 6. Потоки данных в С++

  • Иерархия классов потоков в С++.
  • Форматированный ввод/вывод.
  • Использование и создание манипуляторов.
  • Перегрузка операций ввода/вывода.
  • Работа с файлами.
Модуль 7. Наследование и полиморфизм

  • Наследование как механизм повторного использования кода.
  • Виртуальные функции и позднее связывание.
  • Множественное наследование
  • Виртуальный базовый класс.
  • Чистые виртуальные функции и абстрактные классы.
Модуль 8. Шаблоны функций и классов

  • Области применения шаблонов.
  • Создание и перегрузка шаблонных функций.
  • Определение, специализация и использование шаблонов классов.
Модуль 9. Управление исключениями

  • Применение операторов try, catch, throw.
  • Динамическая идентификация типов времени выполнения (RTTI).
  • Операции приведения типа.
             

По окончании курса Вы будете уметь:

  • Работать с различными типами данных, операторами и функциями С++
  • Производить инкапсуляцию
  • Использовать конструкторы и деструкторы
  • Перегружать операции
  • Использовать наследование и полиморфизм
  • Разрабатывать абстрактные классы и интерфейсы
  • Применять шаблоны функций и классов
  • Управлять исключениями

Регистрация и оплата курса