- •5.05010301 „Розробка програмного забезпечення”
- •Приклади
- •Приклад
- •Завдання 2
- •Лабораторна робота №2. Перевантаження операцій.
- •1.Абстрактний тип даних (атд).
- •2.Перевантаження операцій.
- •Лабораторна робота №3. Успадкування і віртуальні функції
- •Лабораторна робота №4 Ієрархія об'єктів і групи. Ітератори.
- •Студент Викладач Кафедра Студентська група Зав. Кафедрою Факультет
- •Лабораторна робота №5. Обробка подій.
- •Об'єкт-калькулятор, що працює з цілими числами
- •Лабораторна робота №5. Реалізація етапів ооп.
- •4.Що таке EasyWin програма?
- •Лабораторна робота №6. Шаблони функцій і класів.
- •Лабораторна робота №7. Потокові класи.
- •Лабораторна робота №8 Стандартна бібліотека шаблонів
- •3.Класи-контейнери.
- •Операції, що не модифікують
- •Операції, що модифікують
- •Сортування
- •Робота з множинами
- •Мінімуми і максимуми
- •Перестановки
- •Список рекомендованої літератури а) Основна
- •А) Додаткова
МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПРОРТУ УКРАЇНИ
Хмельницький політехнічний коледж
МЕТОДИЧНІ ВКАЗІВКИ
до лабораторних робіт
з курсу “Об’єктно-орієнтоване програмування ”
для студентів спеціальності
5.05010301 „Розробка програмного забезпечення”
УКЛАДАЧ: ГУМЕННА В.В.
Розглянуто та схвалено
на засіданні циклової комісії програмного забезпечення
(протокол № 2 від 10.09.2011р.)
м.Хмельницький
2011
Методичні вказівки складені згідно з програмою курсу “Об'єктно-орієнтованого програмування” для спеціальності 5.05010301 „Розробка програмного забезпечення” і призначені для виконання лабораторних робіт студентів
Автор:
Викладач -методист В.В. Гуменна
Забороняється тиражування та розповсюдження без відома автора.
ЗМІСТ
ВСТУП 4
Лабораторна робота №1. Класи й об'єкти в С++ 5
Лабораторна робота №2. Перевантаження операцій. 16
Лабораторна робота №3. Успадкування і віртуальні функції 22
Лабораторна робота №4 Ієрархія об'єктів і групи. Ітератори. 41
Лабораторна робота №5. 48
Обробка подій. 48
Об'єкт-калькулятор, що працює з цілими числами 53
Лабораторна робота №5. Реалізація етапів ООП. 58
Лабораторна робота №6. 65
Шаблони функцій і класів. 65
Лабораторна робота №7. 71
Потокові класи. 71
Лабораторна робота №8 80
Стандартна бібліотека шаблонів 80
Список рекомендованої літератури 77
ВСТУП
Даний лабораторний практикум складений відповідно до програми курсу “Об’єктно-орієнтоване програмування”, і призначений для студентів спеціальності 5.05010301 „Розробка програмного забезпечення”
Мета практикуму — закріпити знання, отримані при вивченні теоретичної частини курсів і одержати практичні навички розробки об’єктно-орієнтованих програм. Практикум охоплює всі розділи об’єктно-орієнтованого програмування мовою С++ і включає виконання десяти лабораторних робіт. Перші чотири роботи пов'язані з базовими поняттями С++, такими як об'єкти і класи, спадкування, поліморфізм і віртуальні функції, обробка подій. Останні оботи присвячені розвинутому програмуванню на С++ і охоплюють розділи професійного програмування, такі як об’ектний аналіз, моделювання, шаблони, потокові класи і стандартна бібліотека шаблонів.
У посібнику для кожної лабораторної роботи зазначені мета й основний зміст роботи. Наведено теоретичні відомості, необхідні для проведення роботи, порядок виконання роботи і методичні вказівки. Наприкінці наведені варіанти завдань і зміст звіту по роботі.
Лабораторні роботи виконуються: у середовищі Visual Studio C++
Лабораторна робота №1. Класи й об'єкти в С++
Мета. Одержати практичні навички реалізації класів на С++.
Основний зміст роботи.
Написати програму, в якій створюються і руйнуються об'єкти, визначеного користувачем класу. Виконати дослідження викликів конструкторів і деструкторів.
Короткі теоретичні зведення
Клас.
Клас — фундаментальне поняття С++ і лежить в основі багатьох властивостей С++. Клас надає механізм для створення об'єктів. У класі відбиті найважливіші концепції об’єктно-орієнтованого програмування: інкапсуляція, спадкування, поліморфізм.
З погляду синтаксису клас у С++ — це структурований тип, утворений на основі вже існуючих типів.
У цьому сенсі клас є розширенням поняття структури. У найпростішому випадку клас можна визначити за допомогою конструкції:
тип_класу ім'я_класу {список_членів_класу};
де
тип_класу – одне з службових слів class, struct, union;
ім'я_класу – ідентифікатор;
список_членів_класу – визначення й описи типізованих даних і приналежних класу функцій.
Функції – це методи класу, що визначають операції над об'єктом.
Дані – це поля об'єкта, що утворять його структуру. Значення полів визначає стан об'єкта.
