From 47d6fd52adf26180d68958c3c9f1ccc86f0c51ea Mon Sep 17 00:00:00 2001 From: Angel Dimitriev Date: Wed, 11 May 2022 12:57:47 -0400 Subject: Create Теми за устен изпит - ООП, СИ, 2022 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...20\236\320\236\320\237, \320\241\320\230, 2022" | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 "Utills/\320\242\320\265\320\274\320\270 \320\267\320\260 \321\203\321\201\321\202\320\265\320\275 \320\270\320\267\320\277\320\270\321\202 - \320\236\320\236\320\237, \320\241\320\230, 2022" diff --git "a/Utills/\320\242\320\265\320\274\320\270 \320\267\320\260 \321\203\321\201\321\202\320\265\320\275 \320\270\320\267\320\277\320\270\321\202 - \320\236\320\236\320\237, \320\241\320\230, 2022" "b/Utills/\320\242\320\265\320\274\320\270 \320\267\320\260 \321\203\321\201\321\202\320\265\320\275 \320\270\320\267\320\277\320\270\321\202 - \320\236\320\236\320\237, \320\241\320\230, 2022" new file mode 100644 index 0000000..f0d1f2b --- /dev/null +++ "b/Utills/\320\242\320\265\320\274\320\270 \320\267\320\260 \321\203\321\201\321\202\320\265\320\275 \320\270\320\267\320\277\320\270\321\202 - \320\236\320\236\320\237, \320\241\320\230, 2022" @@ -0,0 +1,29 @@ +Теми за устен изпит - ООП, СИ, 2022 + +Тема 1: Структури и обединения. Представяния в паметта. Размер на обекти/истанции. Подравняване. Подаване на обекти/истанции във функции. Създаване на обекти в динамичната памет. Пример с задачата за N тригъгълника. + +Тема 2: Текстови файлове. Йерархия на потоците. Потоци за вход/изход от файл. Режими на работа. Флагове на състоянията на потока. Позициониране във файл. + +Тема 3: Двоични файлове. Big endian. Запазване на обекти в двоичен файл. Пример за запазване/четене на масив от обекти(от един тип) във файл. Пример за функция, която връща големината на файл. + +Тема 4: Член-функции. Конструктори и деструктор. Извикване на конструктори и деструктори. Конструктори и деструктор при композиция на обекти. Mодификатори за достъп. Капсулация. + +Тема 5: Разделна компилация. Копиращ конструктор и оператор=. + +Тема 6: Динамична памет в класовете. Голямата четворка. Пример за класове Студент с име (до 100 символа) и възраст. Пример за клас студент с име (с произволна дължина) и масив от оценки(с произволна дъжина) + +Тема 7: Предефиниране на оператори. Приятелски класове и функции. Пример за реализация на комплексно число и Nvector. + +Тема 8: Масиви от указатели към обекти. Изключения. Обработка на изключения. Проблеми при работа с потоци. Move семантики - ползи, lvalue, rvalue, move конструктор/оп=, std::move. + +Тема 9: Конвертиращи конструктори. Композиция и агрегация. Шаблони. Пример за шаблонна опашка. Необходими функции в шаблонен клас/шаблонна функция. + +Тема 10: Наследяване. Видове наследяване. Параметри на функции (указатели и референции). Конструктури и деструктори при наследяване. Копиране при наследяване. Пример с бар. + +Тема 11: Статично и динамично свързване. Виртуални функции. Полиморфизъм. Абстрактни класове. Пример за фигури. + +Тема 12: Колекции от обекти в полиморфна йерархия. Копиране и триене. Factory pattern. Пример с ферма. + +Тема 13: Множествено наследяване. Проблеми при множествено наследяване. Диамантен проблем. Пример с шах. + +Тема 14: Дървовидна структура от обекти от полиморфна йерархия. Пример с логически изрази. -- cgit v1.3.1-23-gd82d