Обектно ориентирано програмиране: C++

Учебна програма и график за лекции

Тема на 3 часова лекция Дата БСУ  Дата ЮЗУ 
1. Класове и абстрактни данни - I
-- Дефиниция на клас абстрактни данни Time. Достъп до членовете на класа. 
-- Инициализация на обекти от тип клас - конструктор и аргументи на конструктор. 
-- Деструктор. Кога се изпълняват конструкторите и деструкторите. 
-- Get и set член-функции. Помощни член-функции. 
-- Оператор за присвояване (почленно копиране). 
15.10 20.09 Examples
PPT-lecture
Text
2. Класове и абстрактни данни - II
-- Обекти константи и константи членове на клас -- функции и данни. 
-- Композиция -- обекти като членове-данни на клас. 
-- Приятелски функции и приятелски класове. 
-- Използване на указател this. 
-- Статични членове на клас. 
-- Proxy класове.
16.10 27.09 Examples
PPT-lecture
Text
3. Предефиниране на операции
-- Въведение, основни понятия. Ограничения при предефинирането на операции. 
-- Функции за предефиниране на операции: членове на клас или приятелски функции. 
-- Предефиниране на потоковите операции за вход и изход. 
-- Предефиниране на унарни и бинарни операции 
-- Създаване на клас Array 
***  [ I д. І к. ] ***
17.10 04.10 Examples
PPT-lecture
Text
***  [Тест 1] ***
4. Наследственост - I
-- Базисни класове и производни класове. 
-- Защитени (protected) членове на клас. 
-- Преобразуване на указатели от базисния клас към указатели от производния клас. 
-- Предефиниране на членове от базисния клас в производния клас. 
29.10 11.10 Examples
PPT-lecture
Text
5. Наследственост - II
-- Публични (public), защитени (protected) и частни (private) базисни класове. 
-- Директни и индиректни базисни класове. 
-- Използване на конструктори и деструктори в производни класове. 
-- Пример с класове Point, Circle, Cylinder 
-- Многократна наследственост
30.10 18.10
6. Виртуални функции и полиморфизъм - I
-- Виртуални функции. 
-- Абстрактни базисни класове и конкретни класове. 
-- Полиморфизъм. 
-- Клас Employee и производни класове. 
31.10 25.10 Examples
PPP-lecture
Text
7. Виртуални функции и полиморфизъм - II
-- Динамично свързване. 
-- Виртуални деструктори. 
-- Клас Shape и производни класове. 
-- Механизъм на динамичното свързване.
13.11 08.11 Text
8. Входни и изходни потоци
-- Потоци. Заглавен файл iostream. 
-- Класове и обекти за потоков вход и изход . 
-- Потоков изход -- операции и функции. 
-- Потоков вход -- операции и функции. 
-- Потокови манипулатори. 
-- Състояния на потоците. 
-- Предефиниране на потоковите операции. 
14.11 15.11 Examples
PPP-lecture
*** [Тест 2] ***
9. Шаблони - I
-- Шаблони-функции. 
-- Предефиниране на шаблони-функции. 
-- Шаблони-класове. 
03.12 22.11 Examples
PPP-lecture
10. Шаблони - II
-- Нетипизирани параметри и наследственост. 
-- Приятелски функции и класове. 
-- Шаблони и статични членове. 
04.12 29.11
11. Обработка на изключения - I
-- Дефиниция, класическа обработка на изключения. 
-- Принципи на обработката на изключения в С++. 
-- Пример с деление на 0. 
-- Докладване (throw) на изключение. 
-- Прихващане (catch) на изключение. 
*** [ II д. ІI к. ] ***
05.12 06.12 Examples
PPP-lecture
12. Обработка на изключения - II
-- Пренасочване на обработката на изключението. 
-- Обработка на неочаквани изключения. 
-- "Развиване" на стека. 
-- Конструктори, деструктори и изключения. 
-- Наследственост и изключения. 
17.12 13.12 Допълнение:
Vector
13. Потоци и работа с файлове
-- Йерархия на данни 
-- Последователни файлове - създаване, обновяване и четене 
-- Файлове с пряк достъп - създаване, обновяване и четене 
-- Работа с низови потоци 
*** [ III д. ] ***
18.12 20.12 Examples
PPP-lecture
14. Стандартна библиотека със шаблони - I
-- Въведение в STL 
-- Контейнери-редици и асоциативни контейнери 
-- Адаптери на контейнери - стек, опашка и опашка с приоритет 
-- Алгоритми
---- ---- Examples
PPP-lecture
15. Стандартна библиотека със шаблони - II
-- Алгоритми
---- ----
Общо - 45 часа 

ppview97.exe - viewer for PPP-lecture