Форум программистов, компьютерный форум CyberForum.ru

Наследование - C++

Восстановить пароль Регистрация
 
МэЭэри
0 / 0 / 0
Регистрация: 09.12.2010
Сообщений: 7
12.12.2010, 16:34     Наследование #1
Реализовать наследование классов, их констркторов, и если необходимо деструкторов, для своего варианта. Продемонстрировать в программе работу функций классов.


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Создать класс Employee, содержащий следующие элементы:
- поле «ФИО»  char* FIO;
- поле «Табельный номер»  int Number;
- поле «Возраст» int Age;
- поле «Стаж» int Stage;
- метод   получения ФИО  char* GetFIO();
- метод получения таб. номера int GetNumber(); 
- метод получения стажа int GetStage();
- метод получения возраста int GetAge();
- конструктор с параметрами Employee(char* FIO, int Number, int Stage, int Age);
Унаследовать от класса Employee класс Turner (Токарь), содержащий элементы:
-   поле «Разряд» int Experience; 
-   поле «Номер цеха» int Department;
-   конструктор с параметрами Turner(char* FIO, int Number, int Stage, int Age, int Department, int Experience);
-   метод «Смена цеха» void ChangeDepartment(int NewDepartment);
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2010, 16:34     Наследование
Посмотрите здесь:

C++ Наследование
Наследование C++
C++ наследование
C++ Наследование?!
C++ наследование
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
lemegeton
 Аватар для lemegeton
2910 / 1339 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
12.12.2010, 21:07     Наследование #2
А если вместо char* использовать string?
МэЭэри
0 / 0 / 0
Регистрация: 09.12.2010
Сообщений: 7
15.12.2010, 23:26  [ТС]     Наследование #3
дааааа
lemegeton
 Аватар для lemegeton
2910 / 1339 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
16.12.2010, 00:14     Наследование #4
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
#include <iostream>
#include <string>
using namespace std;
 
class Employee
{
private:
        string FIO;
        int Number;
        int Age;
        int Stage;
public:
        Employee(string aFIO, int aNumber, int aAge, int aStage)
                : FIO(aFIO), Number(aNumber), Age(aAge), Stage(aStage) {}
        string GetFIO() const { return FIO;    }
        int GetNumber() const { return Number; }
        int GetAge()    const { return Age;    }
        int GetStage()  const { return Stage;  }
};
 
class Turner : public Employee
{
private:
        int Expirience;
        int Department;
public:
        Turner(string aFIO, int aNumber, int aAge, int aStage, int aDepartment, int aExpirience)
                : Employee(aFIO, aNumber, aAge, aStage), Department(aDepartment), Expirience(aExpirience) {}
        void ChangeDepartment(int NewDepartment) { Department = NewDepartment; }
};
 
int main()
{
        Employee A("Ivanov Ivan Ivanovich", 1, 34, 10);
        Turner   B("Petrov Ivan Ivanovich", 2, 33, 9, 1, 4);
 
        cout << A.GetNumber() << ": " << A.GetFIO() << endl;
 
        return 0;
}
С демонстрированием работы туго. Не придумать ничего.
Yandex
Объявления
16.12.2010, 00:14     Наследование
Ответ Создать тему
Опции темы

Текущее время: 22:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru