Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Sergei2012
0 / 0 / 0
Регистрация: 17.02.2013
Сообщений: 78
#1

Помогите найти ошибку при множественном наследовании - C++

24.04.2014, 13:33. Просмотров 271. Ответов 3
Метки нет (Все метки)

Помогите разобраться в наследовании
Помогите найти ошибку при множественном наследовании

Прилагаю код
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
#include <iostream>
 
using namespace std;
 
class B1 
{protected:;
 
public:int b1;
B1(int a):b1(a){}
void showB1()   {
cout << "B1 = " << b1 << endl;
}
};
class B2
{public:
int b2;
B2(int b):b2(b){}
void showB2()   {
cout << "B2 = " << b2 << endl;
}
};
class D1:protected B1,public B2
{public:
int d1;
D1(int c,int a,int b):B1(a),B2(b),d1(c){}
void showD1()   {
cout << "D1 = " << d1 << endl;
showB1();
showB2();
}
};
class B3
{protected:
int b3;
public:
B3(int d):b3(d){}
void showB3()   {
cout << "B3 = " << b3 << endl;
}
};
 
 
class D2:public D1,protected B3
{public:
int d2;
D2(int a , int b, int c,int d,int g):D1(a,b,c),B3(d),d2(g){}
 
void showD2()   {
cout << "D2 = " << d2 << endl;
 
showD1();
showB3();
}
};
class D3:public D2
{public:
int d3;
D3(int a , int b, int c,int d,int g,int e):D2(a,b,c,d,g),d3(e){}
void showD3()   {
cout << "D3 = " << d3 << endl;
 
showD2();
 
}
};
int main () {
D3 elemD3(100, 200, 300, 400 ,500, 600);
   elemD3.showD3();
 
 
 
 
system("pause");
return 0;
 
}
При компиляции выдает
Помогите найти ошибку при множественном наследовании
можете сказать , правильно сделал или нет,
если нет то пжл .исправьте
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.04.2014, 13:33
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Помогите найти ошибку при множественном наследовании (C++):

Неоднозначность при множественном наследовании - C++
Привет всем, столкнулся с проблемой при множественном наследовании классов. Надеюсь, кто-нибудь поможет как можно скорее. Ошибка...

Инициализация при множественном наследовании - C++
Имеется иерархия типов. Во главе: базовый класс-интерфейс, далее один базовый класс, от него два производных, а от них множественно...

Конструктор при множественном наследовании - C++
#include &lt;string&gt; class Worker // an abstract base class { private: std::string fullname; long id; public: ...

Конструкторы с параметрами при множественном наследовании - C++
у меня есть класс, quotes который является базовым для двух классов moving_average и rsi (наследуются от quotes чз virtual) эти два класса...

Порядок вызова конструкторов при множественном наследовании - C++
Здравствуйте, меня интересует вопрос, как изменить последовательность вызова конструкторов базовых классов во время создания объекта класса...

Конфликт имен при множественном наследовании struct - C++
Уважаемые гуру, помогите разрешить конфликт имён в приведённом ниже примере, не изменяя структуру наследования. Заранее спасибо! ...

3
Sergei2012
0 / 0 / 0
Регистрация: 17.02.2013
Сообщений: 78
28.04.2014, 12:10  [ТС] #2
ни кто не поможет?
Сказали бы , правильно или нет?
И больше ничего не нужно
0
Jewbacabra
Эксперт PHP
2650 / 2237 / 842
Регистрация: 24.04.2014
Сообщений: 6,718
28.04.2014, 12:25 #3
Sergei2012, а собственно что нужно сделать?
На первый взгляд все поля классов лучше положить в private или protected секции, а метод show в public, и во всех классах его переопределять.
0
Sergei2012
0 / 0 / 0
Регистрация: 17.02.2013
Сообщений: 78
28.04.2014, 12:48  [ТС] #4
построить иерархию классов согласно схеме наследования. Каждый класс должен содержать инициализирующий конструктор и функцию Show для вывода значений. Функция main должна иллюстрировать иерархию
наследования.
мне бы проверить правиьность , того что я наделал!
0
28.04.2014, 12:48
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.04.2014, 12:48
Привет! Вот еще темы с ответами:

При множественном наследовании не работает getline(std::cin, ?) - C++
Изучаю множественное наследование, так вот, нужно ввести два слова, но программа просто пропускает getline (std::cin, ?) Когда так при...

Реализация двух виртуальных методов с одинаковыми именами при множественном наследовании - C++
Доброй ночи. Надеюсь, я внятно описал что меня интересует в названии топика. Теперь распишу детальней, что хочу: Есть два абстрактных...

Ромб в множественном наследовании - C++
Добрый день ! Не помню как устранить проблему ромба в множественном наследовании. Вроде нужно втулить куда-то слово виртуал 2...

Помогите найти ошибку при заполнении вектора - C++
Допустил ошибку при заполнении вектора. #include&lt;iostream&gt; #include&lt;cstring&gt; #include&lt;vector&gt; #include&lt;iterator&gt; using namespace...


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

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

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