Интернет Университет информационных технологий  
 
Язык программирования C++
Автор
Фридман Александр Львович

Информация о курсе
В систематизированном виде излагаются основные понятия и описываются возможности языка C++. При этом основное внимание уделяется объяснению того, как теми или иными возможностями пользоваться.
Язык программирования C++ в – это универсальный язык программирования, который позволяет разрабатывать программы в соответствии с разными парадигмами: процедурным программированием, объектно-ориентированным, параметрическим. В данном курсе рассматриваются все основные возможности языка C++ и их применение при разработке объектно-ориентированных программ. Дается краткое описание библиотек языка C++, необходимых для создания типичных программ.

Цель
Для программистов начинающих изучать объектно-ориентированное программирование и язык C++.

Предварительные знания
Основные понятия программирования, основы объектно-ориентированного программирования.

Лекции Описание
1.Начальные сведения о языке История создания языка и его эволюция. Международный стандарт языка. Сферы применения языка Си++. Пример простой программы. Объясняется процесс ее написания, использования простейших конструкций языка, использования транслятора и запуск программы на выполнение.
2.Имена, переменные и константы Правила именования переменных и функций языка, правила записи констант. Понятие ключевого или зарезервированного слова, список ключевых слов Си++.
3.Операции и выражения Правила формирования и вычисления выражений в языке Си++. Все операции языка.
4.Операторы Описываются все операторы управления, имеющиеся в языке Си++, даются примеры их использования.
5.Функции Функции – это основные единицы построения программ при процедурном программировании на языке Си++. Правила их записи, вызова и передачи параметров.
6.Встроенные типы данных Рассматриваются все встроенные типы языка Си++: целые числа разной разрядности, вещественные числа, логические величины, перечисляемые значения, символы и их кодировка.
7.Классы и объекты Способы описания классов. Создание объектов. Обращение к атрибутам и методам объектов.
8.Производные типы данных Создание и использование массивов, структур, объединений, указателей. Адресная арифметика. Строки и литералы.
9.Распределение памяти Проблемы при явном распределении памяти в Си++, способы их решения. Ссылки и указатели. Распределение памяти под переменные, управление памятью с помощью переопределения операторов new и delete.
10.Производные классы, наследование Наследование, виды наследования. Виртуальные методы. Абстрактные классы. Множественное наследование.
11.Контроль доступа к объекту Рассматривается возможности контроля доступа к атрибутам и методам объекта, контроль по чтению и по записи.
12.Классы – конструкторы и деструкторы Конструкторы и деструкторы классов. Возможности инициализации объектов. Копирующий конструктор. Операции new и delete.
13.Дополнительные возможности классов Рассматриваются дополнительные возможности при определении классов, включая переопределение операций, определение методов inline и задание собственных преобразований типа.
14.Компоновка программ, препроцессор Способы разработки больших программ. Компоновка нескольких файлов в одну программу. Включаемые файлы. Препроцессор.
15.Определение, время жизни и области видимости переменных в больших программах Возможности построения больших программ, использование общих данных. Определение контекста, оператор namespace.
16.Обработка ошибок Попытка классификации ошибок. Сообщение об ошибке с помощью возвращаемого значения. Исключительные ситуации. Обработка исключительных ситуаций, операторы try и catch.
17.Bвод-вывод Потоки. Манипуляторы и форматирование ввода-вывода. Строковые потоки. Ввод-вывод файлов.
18.Шаблоны Понятие шаблона. Функции-шаблоны. Шаблоны классов. Примеры использования.
  Ссылки к курсу