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

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

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

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

24.04.2014, 13:33. Просмотров 247. Ответов 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;
 
}
При компиляции выдает
Помогите найти ошибку при множественном наследовании
можете сказать , правильно сделал или нет,
если нет то пжл .исправьте
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.04.2014, 13:33     Помогите найти ошибку при множественном наследовании
Посмотрите здесь:

C++ Конструктор при множественном наследовании
Порядок вызова конструкторов при множественном наследовании C++
Конфликт имен при множественном наследовании struct C++
C++ Помогите найти ошибку при работе с вектором
C++ Помогите найти ошибку при копировании массива
Помогите найти ошибку при копировании вектора C++
Инициализация при множественном наследовании C++
C++ Ромб в множественном наследовании
Помогите найти ошибку при заполнении вектора C++
Конструкторы с параметрами при множественном наследовании C++
C++ Реализация двух виртуальных методов с одинаковыми именами при множественном наследовании
Неоднозначность при множественном наследовании C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Sergei2012
0 / 0 / 0
Регистрация: 17.02.2013
Сообщений: 78
28.04.2014, 12:10  [ТС]     Помогите найти ошибку при множественном наследовании #2
ни кто не поможет?
Сказали бы , правильно или нет?
И больше ничего не нужно
Jewbacabra
1969 / 1633 / 598
Регистрация: 24.04.2014
Сообщений: 4,645
28.04.2014, 12:25     Помогите найти ошибку при множественном наследовании #3
Sergei2012, а собственно что нужно сделать?
На первый взгляд все поля классов лучше положить в private или protected секции, а метод show в public, и во всех классах его переопределять.
Sergei2012
0 / 0 / 0
Регистрация: 17.02.2013
Сообщений: 78
28.04.2014, 12:48  [ТС]     Помогите найти ошибку при множественном наследовании #4
построить иерархию классов согласно схеме наследования. Каждый класс должен содержать инициализирующий конструктор и функцию Show для вывода значений. Функция main должна иллюстрировать иерархию
наследования.
мне бы проверить правиьность , того что я наделал!
Yandex
Объявления
28.04.2014, 12:48     Помогите найти ошибку при множественном наследовании
Ответ Создать тему
Опции темы

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