Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Василий!!!
1 / 1 / 0
Регистрация: 24.05.2010
Сообщений: 21
#1

полиморфизм=(

20.12.2010, 20:14. Просмотров 659. Ответов 2
Метки нет (Все метки)

Ув.Знатаки Доброго времени суток!Вот есть проблемка с написание полиморфизма,вот написал класс,написал наследование,а вот как теперь сюда впихнуть virtual ,не могу понять,Помогите ПОЖАЛУЙСТА!
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
#include <iostream>
#include <conio.h>
using namespace std;
class chel
{
protected:
    char fam[20];
    char name[20];
public:
     chel(char *f ,char *n,char *o,int d)
         {
            strcpy(fam,f);
            strcpy(name,n);
        }
void chel::Display()
        {
            cout<<recode("Фамилия:")<<fam<<"\n";
            cout<<recode("Имя:")<<name<<"\n";
        }
};
class p: public chel
{
protected:
    char ot[20];
public:
    p(char *f ,char *n,char *o): chel(f,n)
    {
        strcpy(ot,recode(o));
    }
void p::Display()
        {
            chel::Display();
            cout<<recode("Фамилия:")<<fam<<"\n";
            cout<<recode("Имя:")<<name<<"\n";
            cout<<recode("Отчество:")<<ot<<"\n";
        }
};
class person: public p
{
protected:
    int data_p;
public:
    person(char *f ,char *n,char *o,int d):p(f,n,ot)
        {   
        data_p=d;   
        }
void person::Display()
        {
            person::Display();      
            cout<<recode("Фамилия:")<<fam<<"\n";
            cout<<recode("Имя:")<<name<<"\n";
            cout<<recode("Отчество:")<<ot<<"\n";
            cout<<recode("Год рождения:")<<data_p<<"\n";
         }
};
int main()
{
    chel c("Петров","Иван");
    c.Display();
    cout<<"\n";
    
    p p1("Иванов","Иван","Иванови");
    p1.Display();
    cout<<"\n";
 
    person per("Петров","Иван","Иванович",1991);
    per.Display();
    cout<<"\n";
    getch(); 
    return 0; 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.12.2010, 20:14
Ответы с готовыми решениями:

Полиморфизм c++
Построить массив из указателей (базового типа) на объекты обоих классов....

Полиморфизм.
Доброго времени суток. Помогите решить следующую задачку: Создать класс...

Полиморфизм
не могу разобраться с полиморфизмом((( Вот как мне вычислить трапеции. У нее...

Полиморфизм
Всем доброго времени суток, Разъясните пожалуйста задание: Создать класс...

Полиморфизм
Хай :senor: class MyPrint//производный класс { public: MyPrint() {...

2
Crudelis
Шаровик затейник
679 / 428 / 78
Регистрация: 06.05.2010
Сообщений: 1,109
20.12.2010, 20:27 #2
функцию Display сделайте виртуальной, так как она общая для двух классов
0
Василий!!!
1 / 1 / 0
Регистрация: 24.05.2010
Сообщений: 21
20.12.2010, 20:34  [ТС] #3
Вот в чем и проблема,я не могу понять как здесь реализовать Virtual void Display=(
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.12.2010, 20:34

С++ и полиморфизм
Здравствуйте. Ответьте пожалуйста на несколько вопросов: 1. Что такое...

Полиморфизм
Прочитал в Википедии что такое полиморфизм: Кратко смысл полиморфизма можно...

Полиморфизм в с++
Вообщем я делал программу,изначально в ней было реализовано наследование.Затем...


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

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

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