5 ВВЕДЕНИЕ
7 1. ОБЪЕКТЫ И КЛАССЫ
7 1.1 Основные понятия
7 1.2 Простой класс
9 1.3 Конструкторы и деструкторы
14 1.4 Выводы к главе
14 Контрольные вопросы
15 2. ИНКАПСУЛЯЦИЯ И НАСЛЕДОВАНИЕ
15 2.1 Инкапсуляция или сокрытие данных
18 2.2 Наследование
21 2.3 Унифицированный язык моделирования UML
24 2.4 Выводы к главе
24 Контрольные вопросы
25 3. ВИРТУАЛЬНЫЕ ФУНКЦИИ
25 3.1 Основные положения полиморфизма
26 3.2 Виртуальные функции
29 3.3 Абстрактные классы и чистые виртуальные функции
31 3.4 Виртуальные базовые классы
33 3.4 Выводы к главе
34 Контрольные вопросы
35 4. ПЕРЕГРУЗКА ОПЕРАЦИЙ
35 4.1 Перегрузка операций
36 4.2 Перегрузка унарных операций
37 4.3 Ключевое слово operator
42 4.4 Постфиксные операции
44 4.5 Перегрузка бинарных операций
47 4.6 Выводы к главе
48 Контрольные вопросы
49 5. ШАБЛОНЫ И ИСКЛЮЧЕНИЯ
49 5.1 Шаблоны функций
52 5.2 Синтаксис шаблона функции
53 5.3 Шаблоны функций с несколькими аргументами
55 5.4 Шаблоны классов
58 5.5 Исключения
65 5.6 Выводы к главе
65 Контрольные вопросы
66 6. ПАТТЕРНЫ ПРОЕКТИРОВАНИЯ
66 6.1 Введение в паттерны проектирования
66 6.2 Что такое паттерн проектирования
67 6.3 Модель — Вид — Контроллер (MVC)
69 6.4 Пример использования MVC
73 6.5 Другие паттерны
77 6.6 Выводы к главе
77 Контрольные вопросы
78 7. СТАНДАРТНАЯ БИБЛИОТЕКА ШАБЛОНОВ (STL)
78 7.1 Введение в STL
79 7.2 Контейнеры
85 7.3 Алгоритмы
87 7.4 Итераторы
88 7.5 Возможные проблемы с STL
88 7.6 Выводы к главе Э
89 Контрольные вопросы
Учебно-методическое пособие предназначено для студентов, изучающих дисциплину «ПОАСНИ» направления подготовки 09.03.01 — «Информатика и вычислительная техника», профиль «Автоматизированные системы обработки информации и управления», и дисциплину «Программирование и основы алгоритмизации» направления подготовки 27.03.04 — «Управление в технических системах», профиль «Управление и информатика в технических системах». Пособие также может использоваться студентами других специальностей и направлений.
Учебное пособие посвящено введению в основы ориентированного программирования на языке С++ и дает возможность проектировать и разрабатывать эффективные программные приложения.
Пособие подготовлено на кафедре автоматизированных систем обработки информации и управления инженерно-физического факультета ФГБОУ ВО «Адыгейский государственный университет».