Конспект
по Обектно ориентирано програмиране
2004/2005 уч. година

1. Класове и абстрактни данни - клас Time. Достъп до членовете на класа. Различни файлове за дефиницията на класа и дефинициите на членовете-функции.
2. Функции като членове на клас. Конструктор, аргументи по подразбиране. Деструктор. Get и set функции.
3. Копиране и константи. Почленно копиране. Обекти константи и константи членове на клас - функции и данни.
4. Композиция. Обекти като членове-данни на клас.
5. Приятелски функции и класове. Указател this.
6. Статични членове на клас - данни и функции.
7. Proxy класове.
8. Предефиниране на операции - основни понятия и ограничения. Функции за предефиниране - членове или приятелски функции. Предефиниране на входен и изходен поток.
9. Предефиниране на унарни и бинарни операции. Клас Array.
10. Наследяване на класове. Базови и производни класове. Защитени членове на клас.
11. Предефиниране на членове от базовия клас в производния клас. Директни и индиректни базови класове - Point, Circle, Cylinder.
12. Публична, защитена и частна наследственост. Конструктури и деструктури в производни класове. Многократна наследственост.
13. Предефиниране на членове от базовия клас в производния клас. Прехвърляне на указатели от базовия към производния клас и обратно.
14. Виртуални функции. Абстрактни базови класове. Статично и динамична свързване - клас Shape и производни класове. Виртуални деструктури.
15. Виртуални функции. Статично и динамично свързване. Клас Employee и производни класове.
16. Входни и изходни потоци: заглавни файлове и класове в потоковата библиотека; потоков вход и изход - операции и функции; потокови манипулатори; състояния на потоците.
17. Шаблони за функции; предефиниране.
18. Шаблони за класове: пример със Stack; параметри и наследственост; приятелски функции; статични членове на клас.
19. Обработка на изключения: дефиниции, класическа обработка на изключения; пример с деление на 0.
20. Пренасочване на обработката на изключението. "Развиване" на стека. Обработка на изключение при new.
21. Потоци и работа с файлове: йерархия на данни; последователни файлове; файлове с пряк достъп; работа с низови потоци
22. Въведение в STL -  контейнери, итератори, алгоритми. Контейнери-редици.
23. Асоциативни контейнери
24. Адаптери на контейнери - стек, опашка и опашка с приоритет
25. Алгоритми и функционални класове