Объектно-ориентированное программирование на С++: учебник
Book information
Description
Рассмотрены основные концепции объектно-ориентированного, обобщенного и событийного программирования. В качестве языка программирования выбран язык С++. Подробно изложены принципы и механизмы работы с классами и объектами, в том числе наследование, перегрузка функций и операций, виртуальные функции, шаблоны функций и классов. Большое внимание уделено работе со стандартной библиотекой шаблонов, раздельной компиляции программ и применению компонентного и событийного подходов в разработке программных приложений. Предназначено для студентов бакалавриата, обучающихся по направлениям подготовки 01.03.01 «Математика» и 01.03.02 «Прикладная математика и информатика». Объектно-ориентированное программирование на С++: учебник / И. В. Баранова, С. Н. Баранов, И. В. Баженова [и др.] ОГЛАВЛЕНИЕ Предисловие 1. Основные понятия и принципы объектно-ориентированного подхода 1.1. Основные понятия объектно-ориентированного программирования 1.2. Основные принципы объектно-ориентированного программирования 1.3. Преимущества и недостатки объектно-ориентированного подхода к программированию 1.4. Объектно-ориентированные языки программирования 1.5. Структура ООП-программы и парадигмы программирования, связанные с объектно-ориентированным подходом Контрольные вопросы 2. Работа с классами и объектами 2.1. Описание класса 2.1.1. Спецификаторы доступа 2.1.2. Методы класса 2.1.3. Конструкторы 2.1.4. Деструктор 2.2. Указатель this 2.3. Константные объекты и методы класса 2.4. Статические члены класса 2.5. Дружественные функции Контрольные вопросы 3. Методика и реализация принципа наследования классов 3.1. Базовый и производный классы. Синтаксис объявления наследуемых классов 3.2. Спецификаторы доступа при наследовании 3.3. Конструкторы и деструкторы производных классов 3.4. Перекрытие методов при наследовании 3.5. Примеры иерархии классов при одиночном наследовании 3.6. Множественное наследование Контрольные вопросы Задания для самостоятельного выполнения 4. Механизм полиморфизма. Перегрузка функций и операций 4.1. Основные сведения о перегрузке функций и операций 4.1.1. Перегрузка функций 4.1.2. Перегрузка операций 4.2. Способы перегрузки операторных функций 4.2.1. Перегрузка с помощью функций-членов класса 4.2.2. Перегрузка с помощью глобальных функций 4.2.3. Сравнение функций-членов и глобальных функций 4.3. Примеры перегружаемых операций 4.3.1. Операции инкремента и декремента 4.3.2. Операции ввода/вывода 4.3.3. Операция преобразования типов 4.3.4. Другие операции Контрольные вопросы Задания для самостоятельного выполнения 5. Раннее и позднее связывание. Виртуальные функции 5.1. Механизм раннего связывания 5.2. Вспомогательные поля типа 5.3. Виртуальные функции 5.4. Абстрактные классы 5.5. Механизмы позднего связывания Контрольные вопросы Задания для самостоятельного выполнения 6. Шаблоны классов и функций 6.1. Понятие шаблонов 6.2. Шаблоны функций 6.2.1. Понятие шаблона функции 6.2.2. Правила работы с шаблонами функций 6.2.3. Специализация шаблонов функций 6.2.4. Перегрузка шаблонов функций 6.3. Шаблоны классов 6.3.1. Понятие шаблона класса 6.3.2. Правила описания шаблонов классов 6.3.3. Внешнее описание методов шаблонов классов 6.3.4. Шаблоны как параметры шаблона класса 6.3.5. Специализация шаблонов классов Контрольные вопросы Задания для самостоятельного выполнения 7. Библиотека шаблонов 7.1. Сведения о стандартной библиотеке шаблонов 7.2. Итераторы 7.3. Алгоритмы 7.3.1. Категории алгоритмов 7.3.2. Функции-предикаты 7.4. Функциональные объекты 7.4.1. Стандартные функциональные объекты 7.4.2. Адаптеры функций и функциональных объектов 7.5. Последовательные контейнеры 7.5.1. Основные сведения о последовательных контейнерах 7.5.2. Контейнер vector 7.5.3. Контейнер list 7.5.4. Контейнер deque 7.5.5. Адаптер stack 7.5.6. Адаптер queue 7.5.7. Адаптер priority_queue 7.6. Ассоциативные контейнеры 7.6.1. Общие свойства ассоциативных контейнеров 7.6.2. Множество 7.6.3. Множество с дубликатами 7.6.4. Пары или тип pair 7.6.5. Словарь 7.6.6. Словарь с дубликатами ключей Контрольные вопросы Задания для самостоятельного выполнения 8. Пользовательские библиотеки. Многофайловые проекты 8.1. Понятие пользовательской библиотеки 8.2. Многофайловые проекты 8.3. Директивы pragma 8.4. Разделение интерфейса класса и его реализации 8.5. Пространства имен 8.6. Создание проекта библиотеки динамической компоновки DLL Контрольные вопросы Задания для самостоятельного выполнения 9. Компонентно-ориентированный и событийный подходы к разработке программных приложений 9.1. Основные понятия компонентного и событийного программирования 9.2. Визуальное событийное программирование 9.3. Создание проекта «Форма Windows Forms» Контрольные вопросы Задания для самостоятельного выполнения Послесловие Рекомендательный библиографический список Использованная литература
Similar books
Основы компьютерной графики: Учебное пособие
2018 · PDF
Теория экономического анализа: учебное пособие
2019 · PDF
Управление разработкой новых продуктов (продактменеджмент): учебное пособие
2021 · PDF
КОМПАС-3D для школьников. Черчение и компьютерная графика
Методология научных исследований и прикладной аналитики: Учебник. Изд. 5-е, дополн. и перераб. В 2 т. Т.2: Научные исследования: Мастерство и искусство научного мышления и научной работы / Methodology of Scientific Research and Practical Analytics: A Textbook: Fifth Edition. In two volumes. Vol.2: Scientific research: Art of scientific thinking and scientific work / Méthodologie de la recherche scientifique et de l’analytique appliquée: Manuel: Cinquième édition. En 2 tomes. T.2: Recherches scientifiques: Art de la pensée scientifique et du travail scientifique
2025 · PDF
Методы и понятия философии искусства: практикум : уровень подготовки кадров высшей квалификации: ассиснтурв-стажировка : специальности: 54.09.03 "Искусство дизайна (по видам)", 54.09.02 "Мастерство декоративно-прикладного искусства и народных промыслов (по видам)" : укрупненная группа специальностей: 54.00.00 "Изобразительное и прикладные виды искусств" : квалификация выпускника: "Преподаватель творческих дисциплин в высшей школе. Дизайнер", "Преподаватель творческих дисциплин в высшей школе. Художник декоративно-прикладного искусства" : форма обучения: очная
2022 · PDF
Разработка графического интерфейса пользователя информационной системы с использованием библиотеки QT: учебное пособие для студентов 1 курса направлений подготовки 09.04.02 "Информационные системы и технологии", 27.04.03 "Системный анализ и управление" очной формы обучения, 2 курса направления подготовки 10.05.03 "Информационная безопасность автоматизированных систем" очной формы обучения и 3 курса направления подготовки 09.03.02 "Информационные системы и технологии" очной и заочной форм обучения : учебное электронное издание
2021 · PDF
Археологические культуры Сибири в контексте кросс-культурных контактов в Евразии: к 300-летию первых научных археологических раскопок в Сибири (1722 г.) =: Archaeological Cultures of Siberia in the context of Cross-cultural contacts in Eurasia: dedicated to the 300th anniversary of the first scientific archaeological excavations in Siberia (1722) : материалы Международной археологической конференции молодых исследователей "Археологические культуры Сибири в контексте кросс-культурных контактов в Евразии: к 300-летию первых научных археологических раскопок в Сибири (1722 г.)" (Новосибирск, 21-25 ноября 2022 г.)
2022 · PDF