|
30 / 24 / 6
Регистрация: 24.11.2020
Сообщений: 214
|
||||||||||||||||
Построить иерархию классов, используя абстрактный класс31.03.2021, 15:13. Показов 13002. Ответов 59
Здравствуйте! Помогите разобраться с заданием, честно говоря, я вообще не понимаю, что и как делать...
Задание такое: Постройте иерархию классов, используя абстрактный класс в соответствии с вариантом задания. (Рабочий, кадры, инженер, администрация). Должны быть заданы названия базовых и производных классов. Необходимо разработать поля и методы, наследуемые из базового класса, и собственные компоненты производных классов. При выполнении работы следует разработать возможность выбирать соответствующий класс, просматривать его содержимое, заносить, изменять и удалять данные этого класса. Нашла вот такой код, пыталась хоть как-то вникнуть в тему классов... Пробовала сделать меню, для выбора хотя бы, но не знаю, как реализовать этот самый вывод:
Немного отредактировала, чтобы было удобнее
Например, чтобы реализовать меню, я могу так сделать?
0
|
||||||||||||||||
| 31.03.2021, 15:13 | |
|
Ответы с готовыми решениями:
59
Создать иерархию классов: абстрактный базовый класс Array и производные классы AndArray и OnArray
Создать иерархию классов Шахматная фигура – абстрактный класс, содержащий поле – цвет. Создать производные классы |
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
||
| 31.03.2021, 20:38 | ||
|
Для начала надо понять, что у этих наследников есть общее и какие есть различия. Например, общее здесь вижу, это вывод на экран. Т.е. у базового класса должен быть абстрактный виртуальный метод Print.
1
|
||
|
30 / 24 / 6
Регистрация: 24.11.2020
Сообщений: 214
|
|
| 31.03.2021, 20:41 [ТС] | |
|
oleg-m1973, Ну, как я понимаю, общее это поля, которые они будут наследовать и использовать? Вроде имён и характеристик человека?
0
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
| 31.03.2021, 20:43 | |
|
1
|
|
|
30 / 24 / 6
Регистрация: 24.11.2020
Сообщений: 214
|
|||||||||||
| 31.03.2021, 20:50 [ТС] | |||||||||||
|
oleg-m1973, Ну, получается, что тут у нас есть 3 виртуальных метода, они наследуются, как я понимаю и поля, которые прописаны тоже
0
|
|||||||||||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
| 31.03.2021, 20:55 | |
|
0
|
|
|
388 / 334 / 65
Регистрация: 14.10.2014
Сообщений: 1,461
|
|
| 31.03.2021, 20:57 | |
|
ANGELin04ka, предлагаю сделать абстрактным классом Кадры. В нём написать общие для всех чистые виртуальные функции (по сути интерфейс класса), а уже от него сделать наследников: Рабочий, Инженер, Администрация
1
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
||
| 31.03.2021, 20:57 | ||
|
1
|
||
|
30 / 24 / 6
Регистрация: 24.11.2020
Сообщений: 214
|
|
| 31.03.2021, 20:59 [ТС] | |
|
oleg-m1973, Ну да, то есть эти поля нужно ко всем добавить?
0
|
|
|
388 / 334 / 65
Регистрация: 14.10.2014
Сообщений: 1,461
|
||
| 31.03.2021, 21:00 | ||
|
да, точно - всё, что может быть общим, должно быть в главном, родительском классе (он же абстрактный)
Добавлено через 34 секунды
1
|
||
|
30 / 24 / 6
Регистрация: 24.11.2020
Сообщений: 214
|
|
| 31.03.2021, 21:02 [ТС] | |
|
Recrut_rf, А из других классов их нужно убирать или оставить?
0
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
||
| 31.03.2021, 21:02 | ||
|
1
|
||
|
388 / 334 / 65
Регистрация: 14.10.2014
Сообщений: 1,461
|
|
| 31.03.2021, 21:04 | |
|
ANGELin04ka, нужно убирать - все общие поля и методы (в нашем случае абстрактные) будут в главном, родительском классе.
1
|
|
|
30 / 24 / 6
Регистрация: 24.11.2020
Сообщений: 214
|
||||||
| 31.03.2021, 21:12 [ТС] | ||||||
|
Recrut_rf, Получается так? Я убрала повторяющиеся поля и добавила другие в другие классы.
0
|
||||||
|
388 / 334 / 65
Регистрация: 14.10.2014
Сообщений: 1,461
|
|||||||||||
| 31.03.2021, 21:15 | |||||||||||
|
ANGELin04ka, вот пример из книги Прата С. Язык программирования С++ Лекции и упражнения
заголовочный файл (.h)
1
|
|||||||||||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|||||||
| 31.03.2021, 21:22 | |||||||
|
Второе - если ты реализуешь методы в базовом классе, то используй эту реализацию и в наследниках
1
|
|||||||
|
388 / 334 / 65
Регистрация: 14.10.2014
Сообщений: 1,461
|
|
| 31.03.2021, 21:22 | |
|
ANGELin04ka, да, только в классе Employee методы должны быть чистыми виртуальными (в примере выше они подписаны как pure virtual function) (хотя бы один), а не просто виртуальными. Иначе класс не будет абстрактным.
Ну и в классах наследниках поля, специфичные для них, лучше делать приватными а не защищёнными (protected). От этих классов ведь не нужно будет наследоваться, как минимум в задании ничего про это не сказано. И зачем использовать указатели? Зачем усложнять себе жизнь, если этого никто не требует?
1
|
|
|
30 / 24 / 6
Регистрация: 24.11.2020
Сообщений: 214
|
|
| 31.03.2021, 21:32 [ТС] | |
|
В общем-то я полностью и бесповоротно запуталась
0
|
|
|
30 / 24 / 6
Регистрация: 24.11.2020
Сообщений: 214
|
|||||||||||
| 02.04.2021, 04:42 [ТС] | |||||||||||
|
oleg-m1973, Решила делать всё с 0, думаю, так будет немного понятнее, пока что сделала так
Не знаю, в том ли направлении двигаюсь или нет Добавлено через 1 час 4 минуты Ещё задалась таким вопросом, можно ли сделать нужное нам кол-во вводов через динамический массив и цикл? Ввести то я могу, а вот выводит пустоту
0
|
|||||||||||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|||||||
| 02.04.2021, 11:30 | |||||||
Сообщение было отмечено ANGELin04ka как решение
Решение
1
|
|||||||
| 02.04.2021, 11:30 | |
|
Помогаю со студенческими работами здесь
20
Построить иерархию классов
Построить иерархию классов: Аптека, Магазин, Гастроном Построить иерархию классов точка, отрезок, треугольник
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 30.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
|
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO
Апнулись до NET10.
Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта
так и в интерактивном режиме. из сложностей - чисто функциональный подход.
Решил. . .
|
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2.
Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники".
В. . .
|
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии.
. . .
|
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
В качестве источника данных. . .
|