Объектно-ориентированное программирование. Углубленное изучение. Язык С++ — SynergyCom

Объектно-ориентированное программирование. Углубленное изучение. Язык С++

Код курса: DEV-026 Продолжительность: 5 дней (40 часов)
  1. Механизм RTTI (Run-Time Type Identification)
  • Оператор static_cast и указатели.
  • Динамическая идентификация типа.
    Подключение RTTI.
  • Оператор typeid и класс type_info.
  • Оператор dynamic_cast.
  1. Исключения
  • Что такое исключительные ситуации.
  • Способы отслеживания «аварийных» ситуаций.
  • Обработка исключений: встроенные средства С++ для обработки исключений — операторы try,catch, throw. Непредусмотренные исключения.
  • Стандартные типа исключения.
  • Спецификация исключений при объявлении функций.
  1. Обобщенное программирование
  • Шаблоны. Объявление шаблона.
  • Инстанцирование шаблона.
    Обобщенное программирование. Обобщенные алгоритмы.
  • Шаблоны функций.
  • Способы обобщения функций, выполняющих одинаковые действия, но оперирующих данными разных типов. Создание функции по заданному шаблону и ее вызов.
  • Шаблоны классов. Ключевое слово typename.
  • Стандартная библиотека шаблонов.
  • Контейнеры, алгоритмы и итераторы. Виды контейнеров STL.
  • Структура стандартного контейнера. Обзор членов стандартного шаблона. Что же такое итераторы? Распределители памяти — шаблон allocator.
  • Краткий обзор стандартных контейнеров. Вектор (vector). Список (list).
  • Очереди с двумя концами — deque.
  • Почти контейнеры: встроенные массивы, string, valarray, bitset.
  1. Обобщенные алгоритмы стандартной библиотеки
  • Рассмотрение наиболее часто используемых обобщенных алгоритмов.
  • Алгоритмы, модифицирующие и немодифицирующие последовательности. Предикаты.
  • Использование объектов – функций в качестве предикатов.
  • Базовые классы STL для объектов-функций. Когда следует использовать шаблоны.
  1. Потоки ввода/вывода
  • Система ввода-вывода С++. Поток С++ с точки зрения системы. Поток С++ с точки зрения прикладной программы.
  • Классы ввода/вывода. Стандартные объекты cin и cout. Буферизованный ввод/вывод.
  • Состояние потока.
  • Форматированный ввод/вывод. Флаги ввода/вывода и методы для работы с ними.
  • Манипуляторы ввода/вывода. Файловый ввод/вывод.
  • Неформатированный ввод/вывод.
  1. Практика 1 — RTTI
  • Реализация двухсвязного разнородного объектно-ориентированного списка.
  • Оператор typeid и класс type_info. Оператор dynamic_cast.
  1. Практика 2 — Исключения. Разработка собственных шаблонов
  • Операторы try, catch, throw.
  • Шаблоны функций.
  • Шаблоны классов.
  1. Практика 3 — Шаблоны стандартной библиотеки. Итераторы
  • Шаблон vector.
  • Шаблон list.
  • Итераторы.
  1. Обобщенные алгоритмы
  • Алгоритмы стандартной библиотеки.
  • Предикаты.

Курс не запланирован.

Вы можете подать заявку на открытие курса:

Каталог услуг

Поиск по сайту