Объектно-ориентированное программирование на С++

Учебное пособие

Учебное пособие предназначено для студентов специальности 210106 «Промышленная электроника», изучающих дисциплину «Объектно-ориентированное программирование». Материал, касающийся элементов программирования на С++, включенный в текст пособия, может использоваться студентами 1 курса в рамках изучения дисциплины «Информатика». Пособие построено на базе лекционных курсов «Процедурно-ориентированное программирование» и «Объектно-ориентированное программирование» читаемых на протяжении 5 лет студентам специальности «Промышленная электроника».

Кафедра промышленной электроники

Библиографическая запись:

Егоров, И. М. Объектно-ориентированное программирование на С++: Учебное пособие [Электронный ресурс] / И. М. Егоров. — Томск: ТУСУР, 2007. — 180 с. — Режим доступа: https://edu.tusur.ru/publications/870
Автор:   Егоров И. М.
Год издания: 2007
Количество страниц: 180
Скачиваний: 7

Оглавление (содержание)

1 Введение

2 Элементы программирования на С++

2.1 Алфавит и лексемы языка С++

2.2 Идентификаторы

2.3 Литералы

2.3.1 Символьные константы

2.3.2 Целочисленные константы

2.3.3 Константы с плавающей точкой

2.3.4 Литеральные константы

2.4 Служебные слова

2.5 Операции

2.6 Разделители

2.7 Комментарии в программе

2.8 Типы и их описание

2.9 Основные скалярные предопределенные типы

2.9.1 Тип void

2.9.2 Объявление скалярных предопределенных типов

2.9.3 Размеры памяти, занимаемые предопределенными типами

2.10 Производные типы

2.10.1 Векторные типы (массивы)

2.10.2 Указатели C++

2.10.3 Ссылки

2.11 Объектные типы: классы, структуры, объединения, битовые поля

2.11.1 Структуры

2.11.2 Объединения

2.11.3 Битовые поля

2.12 Объявления и определения С++

2.12.1 Объявление typedef

2.13 Выражения

2.13.1 Арифметические выражения

2.13.2 Выражения отношения и логические выражения

2.13.3 Выражения с поразрядными операциями

2.13.4 Выражения присваивания

2.13.5 Выражения инкремента и декремента

2.14 Операторы

2.14.1 Пустой оператор

2.14.2 Операторы описания

2.14.3 Операторы-выражения

2.14.4 Составные операторы (блоки)

2.15 Операторы управления

2.15.1 Операторы if и if/else

2.15.2 Операторы switch

2.15.3 Операторы while и do while

2.15.4 Оператор for

2.15.5 Оператор break

2.15.6 Оператор continue

2.15.7 Оператор return

2.15.8 Оператор goto

3 Функции

3.1 Структура заголовка функции

3.2 Логический механизм вызова функций

3.3 Объявление, определение и вызов функции

3.3.1 Объявление функции

3.3.2 Определение функций

3.3.3 Вызов функций

3.3.4 Передача параметров функциям

3.4 Перегрузка функций

3.5 Указатели на функции

3.6 Значения параметров по умолчанию

3.7 Функции с неопределенным числом параметров

3.8 Шаблоны функций

3.8.1 Переопределение шаблонной функции

3.8.2 Явные и неявные шаблонные функции

3.9 Резюме по теме фунцции

4 Области видимости, классы памяти и время существования объектов программы

4.1 Область действия и область видимости

4.2 Время существования

4.2.1 Статическое время существования (static)

4.2.2 Локальное время существования

4.2.3 Динамическое время существования

5 Структура программы

5.1 Заголовочные файлы и препроцессор

5.1.1 Директива #include

5.1.2 Директива #define

5.2 Программа и связывание

5.3 Начало и окончание программы

6 Классы С++

6.1 Имена классов

6.2 Типы классов

6.3 Область действия имени класса

6.4 Объекты классов

6.5 Список элементов класса

6.6 Функции элементы

6.7 Ключевое слово this

6.8 Статические элементы

6.9 Область действия элемента

6.10 Вложенные типы

7 Управление доступом к элементам

7.1 Доступ к базовым и производным классам

7.2 Прямые и косвенные базовые классы

7.3 Виртуальные базовые классы

7.4 Пример построения системы классов

8 «Друзья» классов (friend)

9 Конструкторы и деструкторы

9.1 Конструкторы

9.1.1 Конструктор, используемый по умолчанию

9.1.2 Конструктор копирования

9.1.3 Переопределение конструкторов

9.1.4 Порядок вызова конструкторов

9.1.5 Инициализация класса

9.2 Деструкторы

9.2.1 Вызов деструкторов

9.2.2 Виртуальные деструкторы

10 Переопределенные операции

10.1 Операции-функции

10.2 Переопределение new и delete

10.3 Переопределение унарных операций

10.4 Переопределение бинарных операций

10.4.1 Переопределение операции присваивания =

10.4.2 Переопределение операции вызова функции ()

10.4.3 Переопределение операции индексирования []

10.5 Переопределение операции доступа к элементу класса ->

11 Виртуальные функции

12 Абстрактные классы

12.1 Полиморфизм

13 Область действия класса

13.1 Скрытые имена

13.2 Краткое изложение правил определения области действия в С++

14 Шаблоны классов

14.1 Аргументы

14.2 Угловые скобки

14.3 Родовые списки, надежные по типам

14.4 Исключение указателей

15 Потоки

15.1 Вывод

15.1.1 Вывод Встроенных Типов

15.1.2 О выборе знака для переопределяемой операции ввода/вывода

15.1.3 Форматированный вывод

15.1.4 Виртуальная функция вывода

15.2 Файлы и Потоки

15.2.1 Инициализация потоков вывода

15.2.2 Закрытие Потоков Вывода

15.2.3 Открытие Файлов

15.2.4 Копирование потоков

15.3 Ввод

15.3.1 Ввод встроенных типов

15.3.2 Состояния потока

15.3.3 Ввод типов, определяемых пользователем

15.3.4 Инициализация потоков ввода

15.4 Работа со строками

15.5 Буферизация

15.6 Эффективность

16 Заключение

17 Литература