Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
0 / 0 / 0
Регистрация: 18.09.2021
Сообщений: 52

Иерархия классов персона, служащий, рабочий, инженер

27.09.2021, 15:19. Показов 2115. Ответов 3
Метки с++ (Все метки)

Студворк — интернет-сервис помощи студентам
Написать программу, в которой создается иерархия классов. Включить полиморфные объекты в связанный список, используя статические компоненты класса. Показать использование виртуальных функций.
Порядок выполнения работы.
1. Определить иерархию классов (в соответствии с вариантом).
2. Определить в классе статическую компоненту - указатель на начало связанного списка объектов и статическую функцию для просмотра списка.
3. Реализовать классы.
4. Написать демонстрационную программу, в которой создаются объекты различных классов и помещаются в список, после чего список просматривается.
5. Сделать соответствующие методы не виртуальными и посмотреть, что будет.
6. Реализовать вариант, когда объект добавляется в список при создании, т.е. в конструкторе

Все что смог сделал, можете поправить код? Иерархия если что: персона-служащий и рабочий. От служащего - инженер

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
#include <iostream>
#include <string>
 
 
using namespace std;
 
class Persona
{
protected:
    string Surname;//фамилия
    string Pol;//пол
    string Dolgnost;
    int Stag;//стаж
    int Kategiria;
 
public:
    Persona(string Surname_input, string Pol_input, string Dolgnost_input, int Stag_input, int Kategiria_input)
    {
        Surname = Surname_input;
        Pol = Pol_input;
        Stag = Stag_input;
        Kategiria = Kategiria_input;
        Dolgnost = Dolgnost_input;
    }
    void Show()
    {
        cout << "Название: " << Surname << endl;
        cout << "Пол: " << Pol << endl;
        cout <<"Должность: "<< Dolgnost << endl;
        cout << "Стаж: " << Stag << endl;
        cout << "Категория: " << Kategiria << endl;
    }
};
 
class Employee : public Persona//служащий
{
public:
    Employee(string Surname_input_O, string Pol_input_O, string Dolgnost_input_O, int Stag_input_O, int Kategiria_input_O) :Persona(Surname_input_O,  Pol_input_O,  Dolgnost_input_O,  Stag_input_O, Kategiria_input_O)
    {
 
    }
};
 
class Worker : public Persona//рабочий
{
public:
    Worker(string Surname_input_W, string Pol_input_W, string Dolgnost_input_W, int Stag_input_W, int Kategiria_input_W) :Persona(Surname_input_W, Pol_input_W, Dolgnost_input_W, Stag_input_W, Kategiria_input_W)
    {
        
    }
    
};
 
class Engeener :public Employee//инженер
{
public:
    Engeener(string Surname_input_E, string Pol_input_E, string Dolgnost_input_E, int Stag_input_E, int Kategiria_input_E) :Employee(Surname_input_E, Pol_input_E, Dolgnost_input_E, Stag_input_E, Kategiria_input_E)
    {
 
    }
};
int main()
{
    setlocale(0, "rus");
 
    cout << "Инженер" << "\n";
    Engeener Persona("Ivan", "Мужской", 1342099, "...");
    Persona.Show();
    cout <<"\n";
 
 
    cout << "Рабочий"<< "\n";
    Worker Persona( 5, "...", "5");
    Persona.Show();
    cout <<"\n";
 
 
    system("pause");
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
27.09.2021, 15:19
Ответы с готовыми решениями:

Наследование и виртуальные функции: служащий, персона, рабочий, инженер
Подскажите пожалуйста, как исправить эти ошибки. //kadry.h #include &lt;iostream.h&gt; #include &lt;stdio.h&gt; #ifndef KADRYH ...

Наследование и виртуальные функции: служащий, персона, рабочий, инженер
Перечень классов: служащий, персона, рабочий, инженер. Иерархия классов 1. ...

Иерархия классов "Студент, преподаватель, персона, завкафедрой"
Помогите создать иерархию классов ; Студент,преподаватель,персона,завкафедрой; на языке C++

3
 Аватар для Super-Hacker
342 / 114 / 37
Регистрация: 26.11.2019
Сообщений: 735
27.09.2021, 17:50
Хватит кидать темы из 2006
0
0 / 0 / 0
Регистрация: 18.09.2021
Сообщений: 52
28.09.2021, 00:18  [ТС]
Ну такие практики сейчас дают



Добавлено через 29 секунд
Super-Hacker, поможешь? накину немного на карту
0
 Аватар для Super-Hacker
342 / 114 / 37
Регистрация: 26.11.2019
Сообщений: 735
05.10.2021, 11:52
Не хочу деанонить её номер
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.10.2021, 11:52
Помогаю со студенческими работами здесь

Создать базовый класс - работник и производные классы - служащий с почасовой оплатой, служащий в штате и служащий с процентной ставкой
Мальчики помогите пожалуйста, с задачей. -Создать базовый класс - работник и производные классы - служащий с почасовой оплатой, служащий...

Построить иерархию классов Служащий, персона, рабочий, инженер
1)Построить иерархию классов в соответствии с вариантом задания: Служащий, персона, рабочий, инженер 2) Расширить иерархию классов из...

Построить иерархию классов: Служащий, персона, рабочий, инженер. Добавить виртуальный класс
1)Построить иерархию классов в соответствии с вариантом задания: Служащий, персона, рабочий, инженер 2) Расширить иерархию классов из...

Наследование и виртуальные функции: служащий, персона, рабочий, инженер - C++
Порядок выполнения работы: 1) Определить иерархию классов. 2) Определит в классе статическую компоненту-указатель на начало связанного...

Наследование и виртуальные функции: служащий, персона, рабочий, инженер
Вариант: служащий, персона, рабочий, инженер. Порядок выполнения 1. Определить иерархию классов (в соответствии с вариантом). ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru