Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Наследование и полиморфизм




Методические указания к лабораторным работам

Й семестр

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

 

1. Познакомиться с темой и целью лабораторной работы.

2. Изучить необходимые к выполнению лабораторной работы теоретические сведения и примеры программ.

3. Познакомиться с общим заданием к лабораторной работе и индивидуальным вариантом задания.

4. Написать и отладить программу решения задачи индивидуального варианта.

5. Протестировать работу программы на различных наборах исходных данных.

6. Продемонстрировать преподавателю работу программы.

7. Оформить отчет.

8. Защитить лабораторную работу.

 

Оборудование, технические средства, инструмент

Лабораторные работы выполняются в компьютерном классе, оснащенном персональными компьютерами. На компьютерах должна быть установлена система программирования, поддерживающая создание консольных программ на С++ (например, Geany, Qt Creator).

 

Требования к оформлению отчета

 

Отчет по лабораторной работе оформляется в виде принтерных распечаток на сброшюрованных листах формата А4. Он должен содержать:

§ титульный лист;

§ задание к лабораторной работе (общее задание и индивидуальный вариант задания);

§ постановка задачи;

§ листинг программы;

§ тестовые примеры, иллюстрирующие все варианты работы программы.

Требования к защите лабораторных работ

 

После оформления отчета, лабораторную работу защищают, т. е. поясняют алгоритм работы программы и отвечают на контрольные вопросы.

Лабораторная работа №2. Отношения между классами и объектами

Цель работы: получить практические навыки организации и использования отношений между классами и объектами в С++.

Наследование и полиморфизм

Наследование – это один из инструментов языка С++ (и других объектно-ориентированных языков программирования), позволяющих создавать новые классы на основе существующих (производные классы создаются на основе базовых).

Наследование поддерживает между классами (и соответственно между экземплярами этих классов т. е. объектами) отношение «is-a» («является разновидностью»). Производный класс всегда является разновидностью базового, т. е. базовый класс описывает общие поля данных и реализует только самые общие методы, описывающие поведение объектов его иерархии, а каждый производный класс лишь добавляет специфические особенности.

С помощью механизма наследования в С++ реализуется возможность повторного использования кода. Унаследованные поля и методы базового класса могут использоваться объектами производных классов.

Для построения иерархий классов в С++ предусмотрен так же механизм полиморфизма, обеспечивающий возможность по разному определять единый по названию метод для классов различных уровней иерархии.

До выполнения лабораторной работы необходимо изучить, как в С++ организуется между классами и объектами отношение наследования и как применяется механизм полиморфизма.

В качестве примера использования отношения наследования и полиморфизма в листинге 2.1 представлена программа, созданная в Geany, в которой реализовано взаимодействие объектов трех классов: базового класса CPublication и производных классов CBook и CJournal.

Результат выполнения программы в различных вариантах представлен на рисунке 2.1.

Листинг 2.1

#include <iostream>

#include <conio.h>

using namespace std;

//базовый класс "публикация"

Class CPublication

{ protected:

char m_szTitle[80];//название публикации

Поделиться:





Читайте также:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...