cpp-oop (Методические пособия по C++ Г.С.Иванова 3 части)
Описание файла
PDF-файл из архива "Методические пособия по C++ Г.С.Иванова 3 части", который расположен в категории "". Всё это находится в предмете "объектно-ориентированное программирование (ооп)" из 2 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. .
Просмотр PDF-файла онлайн
Текст из PDF
Оглавление1 КЛАССЫ, ОБЪЕКТЫ И ДОСТУП К ОБЪЕКТАМ И ИХ КОМПОНЕНТАМ 31.1 Описание класса.................................................................................................................................... 31.2 Создание объектов при отсутствии конструктора в классе. ..................................................Обращение к общедоступным полям и методам класса. Неявный параметр this ................ 61.3 Создание и уничтожение объектов с использованием конструкторов и деструкторов .... 121.4 Константные объекты.
Перегрузка методов для константных объектов ............................. 241.5 Классы с динамическими полями................................................................................................... 291.6 Создание, инициализация и уничтожение динамических объектов ..................................... 321.7 Динамические массивы объектов и массивы указателей на объекты ...................................
35Вопросы для самоконтроля ...................................................................................................................... 422 ПОСТРОЕНИЕ ИЕРАРХИИ КЛАССОВ ............................................................... 432.1 Наследование ....................................................................................................................................... 432.2 Множественное наследование.........................................................................................................
522.3 Виртуальное наследование............................................................................................................... 562.4 Простой полиморфизм ...................................................................................................................... 592.5 Сложный полиморфизм .................................................................................................................... 622.6 Абстрактные функции и классы ..................................................................................................... 68Вопросы для самоконтроля ...................................................................................................................... 723 КОМПОЗИЦИЯ И НАПОЛНЕНИЕ........................................................................
733.1 Композиция. Объектные поля класса ............................................................................................ 733.2 Наполнение .......................................................................................................................................... 783.3 Особенности работы с динамическими полиморфными объектами ..................................... 813.4 Восходящее и нисходящее изменение типа объектов ............................................................... 833.5 Контейнерные классы........................................................................................................................ 89Вопросы для самоконтроля ...................................................................................................................... 984 ОСОБЫЕ СЛУЧАИ ОРГАНИЗАЦИИ ДОСТУПА К ОБЪЕКТАМ ИИХ КОМПОНЕНТАМ ................................................................................................
994.1 Локальные и вложенные классы ..................................................................................................... 994.2 Статические компоненты класса .................................................................................................. 1024.3 Дружественные функции и классы .............................................................................................. 106Вопросы для самоконтроля .................................................................................................................... 1115 ПЕРЕОПРЕДЕЛЕНИЕ ОПЕРАЦИЙ ....................................................................
112Функции-операторы, их типы и ограничения на переопределение ..................................... 112Описание компонентных функций-операторов ........................................................................ 114Описание внешних функций-операторов ................................................................................... 116Особенности переопределении операции присваивания........................................................ 120Переопределение операций для объектов с динамическими полями.
..................................Контроль освобождения динамической памяти ....................................................................... 123Вопросы для самоконтроля .................................................................................................................... 1275.15.25.35.45.56 ШАБЛОНЫ ................................................................................................................ 1286.1 Параметризованные функции ........................................................................................................ 1286.2 Параметризованные классы ........................................................................................................... 1306.3 Контейнеры на основе шаблонов .................................................................................................
140Вопросы для самоконтроля .................................................................................................................... 14327 ИСКЛЮЧЕНИЯ ........................................................................................................ 1447.1 Механизм исключений С++ ...........................................................................................................
1447.2 Механизм исключений С ................................................................................................................ 1517.3 Совместное использование различных механизмов обработки исключений ................... 158Вопросы для самоконтроля .................................................................................................................... 1618 СОЗДАНИЕ И УНИЧТОЖЕНИЕ ДИНАМИЧЕСКИХ ОБЪЕКТОВ.«УМНЫЕ УКАЗАТЕЛИ» ........................................................................................
1628.1 Проблемы работы с динамическими объектами....................................................................... 1628.2 Шаблон auto_ptr ................................................................................................................................ 1658.3 Шаблон shared_ptr ............................................................................................................................ 1688.4 Шаблон weak_ptr .............................................................................................................................. 171Вопросы для самоконтроля ....................................................................................................................
173ЛИТЕРАТУРА ................................................................................................................ 174ОглавлениеИванова Г.С., Ничушкина Т.Н. «Объектно-ориентированное программирование на языке C++ в среде Microsoft Visual Studio 2008»31Классы, объекты и доступ к объектам и их компонентам1.1Описание классаВ С++ так же, как и в других языках программирования, класс – создаваемыйпрограммистом структурный тип данных, который используется для описания множестваобъектов предметной области, имеющих общие свойства и поведение.Класс объявляется следующим образом:сlass <Имя класса>{private:<Внутренние (недоступные) компоненты класса>protected:<Защищенные компоненты класса>public:<Общие (доступные) компоненты класса>};Описание предусматривает три секции. Компоненты класса, объявленные в секцииprivate, называются внутренними.
Они доступны только компонентным функциям тогоже класса и функциям, объявленным дружественными (см. раздел 4.3) описываемомуклассу.Компоненты класса, объявленные в секции protected, называются защищенными.Они доступны компонентным функциям не только данного класса, но и его потомков.При отсутствии наследования – интерпретируются как внутренние.Компоненты класса, объявленные в секции public, называются общими. Онидоступны за пределами класса в любом месте программы. Именно в этой секцииосуществляется объявление полей и методов интерфейсной части класса.Если при описании класса тип доступа к компонентам не указан, то по умолчаниюпринимается тип private.В качестве компонентов в описании класса фигурируют поля, применяемые дляхранения параметров объектов, и функции, описывающие правила взаимодействия сэтими полями.
В соответствии со стандартной терминологией ООП функции –компоненты класса или компонентные функции можно называть методами.ОглавлениеИванова Г.С., Ничушкина Т.Н. «Объектно-ориентированное программирование на языке C++ в среде Microsoft Visual Studio 2008»4Компонентные функции или методы могут быть описаны как внутри, так и внеопределения класса. В последнем случае определение класса должно содержатьпрототипы этих функций, а заголовок описываемой функции должен включатьквалификатор видимости, который состоит из имени класса и знака «::».