Описание курса:
Язык программирования С++ возник в начале 1980-х годов, когда сотрудник фирмы Bell Labs Бьёрн Страуструп придумал ряд усовершенствований к языку C под собственные нужды. Сейчас C++ широко используется для разработки программного обеспечения, являясь одним из самых популярных языков программирования. Область его применения включает создание операционных систем, разнообразных прикладных программ, драйверов устройств, приложений для встраиваемых систем, высокопроизводительных серверов, а также игр.
Существует множество реализаций языка C++, как бесплатных, так и коммерческих и для различных платформ.
Аудитория:
• Си-программисты
• Разработчики на языке C
Необходимая подготовка:
Успешное окончание курса «Программирование на языке C (Си)», или эквивалентная подготовка.
Программа курса:
Модуль 1. Типы данных, операции и функции в С++
• Ссылочный тип данных.
• Операции - расширения контекста.
• Операции new и delete.
• Встроенные inline-функции.
• Перегрузка функций. Аргументы по умолчанию
Модуль 2. Инкапсуляция
• Декларация класса.
• Управление доступом.
• Указатель this.
• Дружественные классы и функции.
Модуль 3. Специальные методы класса
• Конструктор по умолчанию.
• Конструктор копирования.
• Перегрузка конструкторов.
• Деструктор.
Модуль 4. Константные и статические члены класса
• Константные функции и объекты.
• Статические данные и функции.
• Правила инициализации и использования.
Модуль 5. Перегрузка операций
• Правила перегрузки операций в С++.
• Примеры перегрузки основных операций.
• Перегрузка операции присваивания и конструктора копирования.
Модуль 6. Потоки данных в С++
• Иерархия классов потоков в С++.
• Форматированный ввод/вывод.
• Использование и создание манипуляторов.
• Перегрузка операций ввода/вывода.
• Работа с файлами.
Модуль 7. Наследование и полиморфизм
• Наследование как механизм повторного использования кода.
• Виртуальные функции и позднее связывание.
• Множественное наследование
• Виртуальный базовый класс.
• Чистые виртуальные функции и абстрактные классы.
Модуль 8. Шаблоны функций и классов
• Области применения шаблонов.
• Создание и перегрузка шаблонных функций.
• Определение, специализация и использование шаблонов классов.
Модуль 9. Управление исключениями
• Применение операторов try, catch, throw.
• Динамическая идентификация типов времени выполнения (RTTI).
• Операции приведения типа.
Окончательная цена указывается в договоре на обучение.