Лабораторная работа 3


Цель работы: Ознакомиться с возможностью наследования свойств класса в производных классах, изучить механизм вир-туальных функций и их использование для позднего связыва-ния.

1? Порядок выполнения работы.

1. Ознакомьтесь с теоретической частью.
2. Разберитесь с работой программ 1 — 3.
3. Выполните программу Test из каталога L3. Программа
состоит из двух модулей: test.cpp и set.cpp. Для совместной компиляции этих модулей откройте файл проекта Test.ide в Borland C++ 5.0 и выполните компиляцию.
4. Выполните индивидуальное задание.

2? Индивидуальные задания.

Для выполнения индивидуальных заданий взять за основу классы, созданные в лабораторной работе 2.
1. Создайте производный класс, который даст возмож-ность выводить выражение и результат вычисления в опреде-ленное место на экране и в файл.
2. Создайте производный класс, который будет масштаби-ровать заданные координаты и выводить в многоугольник сооб-щения, вводимые с клавиатуры.
3. Создайте производный класс, который будет накла-дывать нормальную кривую на вычерченную гистограмму.
4. Создайте производный класс, который вычерчивает на экране гистограмму и сохраняет в файле параметры этой гис-тограммы.
5. Создайте производный класс, который будет из файла выводить сообщения на текущее время, согласно введенному числу. Имя файла вводится с клавиатуры или является пара-метром по умолчанию.
6. Создайте производный класс, который будет изменять текущую дату, согласно введенному числу дней.
7. Создайте производный класс, который будет опреде-лять новый месяц, согласно введенному числу дней.
8. Создайте производный класс, который позволит изме-нять введенную информацию для каждого самолета.
9. Создайте производный класс, который будет зашифро-вывать эту строку, распечатывать на экране и запоминать в файле.
10. Создайте производный класс, который будет соеди-нять два и более файлов в один, копировать один в другой. Имена файлов задаются с клавиатуры или по умолчанию опреде-ляются в конструкторе.
11.Создайте производный класс, который будет сорти-ровать знакомых на странице записной книжки по номеру телефона и выводить список знакомых по заданной букве алфавита.
12. Создайте производный класс, который будет опреде-лять долгожителя в заданном городе или всех городов, список жителей заданной улицы, дома.

3? Отчет по работе

• Название работы и ее цель;
• Ответы на поставленные вопросы в порядке проведения работы;
• Листинг разработанной и отлаженной программы индивидуального задания?

4? Вопросы по лабораторной работе

1. Что такое наследование? Объясните механизм наследования в С++.
2. Какое бывает наследование?
3. Как осуществляется простое или множественное наследование?
4. Какой класс называется базовым, а какой производным?
5. Как определяется доступ к членам базового класса членов производного класса?
6. Что такое защищенные члены класса?
7. Как влияют спецификаторы public, protect, private на статус наследования?
8. Что такое виртуальные функции и как они определяются в базовом и производном классах?
9. Что такое полиморфизм?
10. Какая функция называется чисто виртуальной?
11. Какой класс называется абстрактным классом? Могут ли существовать экземпляры абстрактного класса?

Загрузка...