Skip to content

kivinew/OOP_LAB_3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Лабораторная работа № 3 "Динамический полиморфизм" по дисциплине "Объектно-ориентированное программирование".

Вариант №3. Время.

Задание:

Часть 1. Разработка абстрактного класса.

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

Часть 2. Разработайте производный класс, осуществив его наследование от разработанного абстрактного класса, с реализацией всех чисто виртуальных функций.

Этот класс будет основным, в его реализации можно использовать рабзработку по предыдущим лабораторным работам. Методы, добавленные в работе №2 (перегружающие операторы), включать в данный класс не нужно. Разработку класса можно разбить на 2 этапа.

На первом, класс должен включить в себя:

  1. Поля-данные, для хранения значений (Hour, Min, Sec).

  2. Реализации виртуальных функций ввода и вывода.

На втором этапе мы реализуем механизм хранения. Добавляем в класс:

  1. Static ДИНАМИЧЕСКИЙ массив указателей на объекты БАЗОВОГО (абстрактного) класса.

  2. Статические переменные для хранения размера массива и числа заполненных ячеек.

  3. Статические функции:

    -добавления указателя (типа Abstract****) на объект данного класса.

    -удаление элемента с заданным номером

    -обход всего массива с вызовом функции Print.

Часть 3. Разработка пользовательского интерфейса.

Идея построения – цикл меню, аналогично работе №1, здесь достаточно предоставить следующие возможности:

-создание нового объекта (и автоматическое добавление его в массив)

-ввод новых значений для объекта с заданным номером

-удаление по логическому номеру

-просмотр всего массива

ПРИМЕЧАНИЕ: для этих операций используются разработанные static методы.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages