Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторні роботи по програмуванні(14 лаб).doc
Скачиваний:
77
Добавлен:
16.05.2015
Размер:
1.43 Mб
Скачать

Контрольні запитання

    1. Сутність перевантаження функцій.

    2. Область використання перевантаження функцій.

    3. Чи можна перевантажити конструктор? Якщо так, то для чого?

    4. Наведіть приклад перевантаження конструктора?

    5. Чи можна перевантажити деструктор?

    6. Що таке аргумент по замовчуванню?

    7. Для чого можуть вводитись аргументи по замовчуванню?

    8. Приклад використання аргументу по замовчуванню.

    9. Коли може виникати неоднозначність при використані перевантаження?

    10. Наведіть приклад можливого виникнення неоднозначності при використанні перевантаження функцій.

    11. Як задати адресу перевантаженої функції?

    12. Наведіть приклад використання перевантаження функції.

    13. Створити клас CFile, що інкапсулює у собі такі функції роботи з файлами, як Open, Close, Seek, Read, Write, GetPosition і GetLength. На базі цього класу створити похідний клас CMyDataFile — файл, що містить у собі дані деякого визначеного типу MyData, а також заголовок, що полегшує доступ до цього файлу. Написати програму, що демонструє роботу з цими класами. Програма повинна містити меню, що дозволяє здійснити перевірку всіх методів класів.

    14. Створити клас CPoint — точка. На його основі створити класи CcoloredPoint і CLine. На основі класу CLine створити клас CColoredLine і клас CPolyLine — багатокутник. Усі класи повинні мати методи для установки й одержання значень усіх координат, а також зміни кольору й одержання поточного кольору. Написати демонстраційну програму, у якій буде використовуватися список об'єктів цих класів у динамічній пам'яті.

    15. Створити абстрактний клас CVehicle. На його основі реалізувати класи CPlane, CCar і CShip. Класи повинні мати можливість задавати й одержувати координати, параметри засобів пересування (ціна, швидкість, рік випуску). Для літака повинна бути визначена висота, для літака і корабля — кількість пасажирів. Для корабля — порт приписки. Написати програму, що створює список об'єктів цих класів у динамічній пам'яті.Програма повинна містити меню, що дозволяє здійснити перевірку всіх методів класів.

Лабораторна робота №7

Тема: Розробка ієрархії класів з використанням віртуальних функцій.

Мета: Засвоєння навичок розробки програм з використанням віртуальних функцій.

Порядок виконання роботи

  1. Ознайомитися з теоретичними основами розробки віртуальних функцій.

  2. Розробити ієрархію з 3-х класів відповідно завдання 1 з використанням вказівки на базовий клас.

  3. Розробити програму з використанням розробленої ієрархії класів п.2.

  4. Розробити ієрархію класів та програму з віртуальними функціями для моделювання геометричних фігур відповідно завдання 2.

  5. Розробити 2-3 тести для перевірки правильності роботи розроблених програм.

  6. Оформити звіт до лабораторної роботи.

Завдання 1.

Розробити метод з використанням принципів простого спадкування та об’єктів одного базового та двох похідних класів. Для цього створити ланцюг класів з простим спадкуванням:

An a_obj;

B b_obj;

C c_obj

і три об’єкта класу. Кожен клас повинен містити параметри-члени класу не менше двох, конструктор і методи (функції) – членів класу не менше двох (одна функція виводу, а інша для проведення простіших математичних операцій).

Робота з об’єктами класів повинна використовувати при виклику об’єкта операцію “.” Та вказівник на базовий та похідні класи з використанням операції “→”

ім’я об’єкта.ім’я функцій

ім’я вказівника→ім’я функції