Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.71/21: Рейтинг темы: голосов - 21, средняя оценка - 4.71
0 / 0 / 1
Регистрация: 18.11.2014
Сообщений: 14
1

Реализация класса "Студент" и наследование от него класса "Аспирант"

03.11.2015, 20:12. Показов 3813. Ответов 4
Метки нет (Все метки)

Помогите, пожалуйста!
Создать абстрактный базовый класс Person, описывающий обычного
человека. Создайте производный класс Student, описывающий типичного
студента. От класса Student наследуйте класс GradStudent, описывающий
типичного аспиранта. Все классы должны содержать функции получения и
изменения всех полей. Написать программу, позволяющую получать
сведения о студентах и аспирантах.

есть наброски
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<stdlib.h>
#include<conio.h>
#include<string.h>
using namespace std;
class Person{
public:
virtual char sub(char a){return(a);}
virtual int voz(int b){return(b);}
virtual int curs(int c){return(c);}
virtual int group(int d){return(d);}
virtual int nom(int e){return(e);}
 
};
class Student:public Person{};
class GradStudent:public Person{
virtual char sub(char a){return(a);}
};
void main(){
 
char a;
int b,c,e,d;
cout<<"V-v pol             : ";
cin>>a;
fflush(stdin);
cout<<"V-v vozrost         : ";
cin>>b;
cout<<"V-v curs            : ";
cin>>c;
cout<<"V-v group, nom po g.: ";
cin>>d>>e;
Person *polimorf=new Student;
cout<<"Pol: "<<polimorf->sub(a)<<endl;
cout<<"Vozrost: "<<polimorf->voz(b)<<endl;
cout<<"Curs: "<<polimorf->curs(c)<<endl;
cout<<"Group: "<<polimorf->group(d)<<endl;
cout<<"Nomer :"<<polimorf->nom(e)<<endl;
polimorf=new GradStudent;
getch();
}
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.11.2015, 20:12
Ответы с готовыми решениями:

Объяснить что такое "раздельная компиляция", что такое "интерфейс класса" и "реализация класса" на примере
Есть класс, содержащий объекты и конструктор. Конструктор объявляется в одном из cpp файлов(их...

Реализовать классы "Воин", "Пехотинец", "Винтовка", "Матрос", "Кортик" (наследование)
Разработать программу с использованием наследования классов, реализующую классы: − воин;...

Два класса: "Студент" и "Курс"
Дано 2 класса: stud, содержащий сведения о студенте (фамилия, вуз, номер группы) и курс, содержащий...

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно"
В зависимости от времени года &quot;весна&quot;, &quot;лето&quot;, &quot;осень&quot;, &quot;зима&quot; определить погоду &quot;тепло&quot;,...

4
Эксперт С++
4974 / 3081 / 456
Регистрация: 10.11.2010
Сообщений: 11,160
Записей в блоге: 10
03.11.2015, 20:21 2
Цитата Сообщение от Alya96 Посмотреть сообщение
есть наброски
А проблема в чём?
0
0 / 0 / 1
Регистрация: 18.11.2014
Сообщений: 14
03.11.2015, 20:25  [ТС] 3
Необходимо добавить конструктор и вывести из класса student класс GradStudent.
0
Эксперт С++
4974 / 3081 / 456
Регистрация: 10.11.2010
Сообщений: 11,160
Записей в блоге: 10
03.11.2015, 20:40 4
Цитата Сообщение от Alya96 Посмотреть сообщение
Необходимо добавить конструктор и вывести из класса student класс GradStudent.
В какой класс необходимо добавить конструктор?
И что значит "вывести из класса student класс GradStudent"?
0
2542 / 1201 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
03.11.2015, 21:39 5
C++
1
2
3
4
5
virtual char sub(char a){return(a);}
virtual int voz(int b){return(b);}
virtual int curs(int c){return(c);}
virtual int group(int d){return(d);}
virtual int nom(int e){return(e);}
при вызове
C++
1
2
Student a;
cout << a.voz(13) << endl; // выведет 13
и при строках
C++
1
cout << 13 << endl; // выведет 13

Так зачем печатать больше? У вас оценку в универе ставят за количество букв в коде чтоле? Пишите второй вариант - он полностью сохраняет логику вашего кода.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.11.2015, 21:39

Создать класс "Студент" и классы "Бюджетный студент" и "Коммерческий студент"
Доброго времени суток. Помогите с задачкой. Наследование. Создать класс студент и классы бюджетный...

В массиве структур студент с полями "ИМЯ" "ВОЗРАСТ" "УСПЕВАЕМОСТЬ" выполнить сортировку по успеваемости по возрастанию
в массиве структур студент с полями &quot;ИМЯ&quot; &quot;ВОЗРАСТ&quot; &quot;УСПЕВАЕМОСТЬ&quot; выполнить сортировку по...

Наследование: "БГТУ", "Факультет", "Группа", "Подгруппа"
Определить иерархию классов (в соответствии с вариантом – выделить базовый и производные)....

Обработка данных класса "Студент"
Определить класс «Студент». Сведения о студенте состоят из его фамилии, кода группы, в которой он...

Ошибки "Expression syntax" и "Unreachable code" при реализации класса матриц
Подскажите по коду. #include &lt;iostream.h&gt; #include &lt;math.h&gt; #include &lt;string.h&gt; #include...

Шаблоны класса:Матрица. Ошибка бинарный "=": не найден оператор, принимающий правый операнд типа "Matr<T>"
Выдает ошибку &quot;бинарный &quot;=&quot;: не найден оператор, принимающий правый операнд типа &quot;Matr&lt;T&gt;&quot; (или...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.