Skip to content

taniadovzhenko/CppCourse

 
 

Repository files navigation

CppCourse

C++ course delivered in mech-math KNU

Lectures

Full lectures and presentations, examples.

Projects

C/C++ projects: https://github.com/mecchmatProjects/C-Projects

C/Cpp tasks, classworks and homeworks

https://github.com/mecchmatProjects/CppTasks

#Програма курсу

Модуль 1. Основні елементи синтаксису Сі

lect 1: Лекція 1. Історія Сі та Сі++. План курсу. Вигляд мінімальної програми на Сі. Програмні блоки. Як створити проект та компіляція програми. Введення-виведення для стандартного Сі на Сі++. Базові операції. Лінійні програми. Дійсні типи даних. Використання опцій для різного типу вводу/виводу та точності вхідних і вихідних параметрів.

lect 2: Лекція 2. Оператори керування на Сі та Сі++. Типи циклів та їх реалізація. Цілі типи даних. Логічні операції. Бітові операції.

lect 3: Лекція 3. Типи даних на Сі. Модифікатори доступу та зберігання. Особливості переводу одого типу в інший. Визначення функцій на Сі. Головна функція. Області доступу змінних. Статичні змінні.

lect 4: Лекція 4. Вказівники. Робота з масивами на Сі. Виділення памяті на Сі. Рядковий тип даних на Сі. Передача даних через аргументи функції. Вказівники на функції.

lect 5: Лекція 5. Структури на Сі. Створення власних типів. Робота з файлами на Сі. Особливості роботи з бінарними та текстовими файлами.

lect 6: Лекція 6. Модульні структура програм, загловочні файли, типовий вигляд проекту на Сі та його компіляція. Препроцесорні команди (макроси). Створення та використання бібліотек.

Модуль 2. Основи Сі++

lect 7: Лекція 1. Введення-виведення для потоків виведення Сі++. Використання опцій для різного типу виводу та точності вхідних і вихідних параметрів (iomanip). Відмінності мінімальної прогами на Сі++ від Сі. Робота з файлами на Сі++. Вказівники та посилання.

lect 8: Лекція 2. Загальні принципи обєктно-орієнтованого програмування. Абстракція. Інкапсуляція. Наслідування. Обєктно-орієнтоване програмування на Сі++. Параметри доступу, типи наслідування. Статичні члени та методи класу. Варіанти роботи з рядковим типом даних на Сі++.

lect 9: Лекція 3. Конструктори та деструктори класів. Варіанти їх створення. Поліморфізм. Невіртуальні методи, віртуальні методи та абстрактні класи. Спеціальні методи, конструктори копіювання та присвоєння. Перезавантаження операторів. Множинне наслідування. Проблеми множинного наслідування. Вступ до паттернів програмування. Типовий вигляд проекту.

lect 10: Лекція 4. Виключення та їх обробка на Сі++. Створення власного виключення. Оператори приведення static_cast, dynamic_cast, const_cast, reinterpret_cast, C-style cast.

lect 11: Лекція 5. Простори імен. Їх визначення та застосування. Шаблони функцій та їх застосування. Шаблони класів та їх застосування.

lect 12: Лекція 6-8. Стандартна бібліотека шаблонів. Контейнери. Пакети vector, array. Deque, list. Set/Multiset. Map/Multimap.

About

C++ course delivered in mech-math KNU

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Rich Text Format 94.5%
  • C++ 2.5%
  • C 2.2%
  • Other 0.8%