|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
30.04.2009, 02:46 | #1 |
Пользователь
Регистрация: 17.02.2009
Сообщений: 25
|
Наследование
Подскажите пожалуйста как так можно сделать
Дан базовый класс А от него наследуетса 2 класса В и С, и от них наследуется D. Тоесть получается ромб. A / \ B C \ / D подскажите как так можно сделать, еслиб без класа а то множественным наследованием, а так я не знаю. или всетаки так наследовать можно. Помоему както через виртуальные функции. можете написать пожалуйста пример простой, искал но чтото все очень сложно и непонятно написано. помогите пожалуйста. |
30.04.2009, 04:21 | #2 |
Пользователь
Регистрация: 27.09.2008
Сообщений: 60
|
Код:
|
30.04.2009, 07:29 | #3 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,065
|
Виртуальное наследование нужно использовать:
Код:
|
30.04.2009, 11:57 | #4 |
Пользователь
Регистрация: 17.02.2009
Сообщений: 25
|
DeFace, так не будет работать.
pu4koff, спасибо. |
30.04.2009, 13:03 | #5 |
Пользователь
Регистрация: 17.02.2009
Сообщений: 25
|
Сорри что борзею, но чета не догоняю.
Задачка. Дан абстрагированный базовый класс А, от него наследуются класс В (с переменными в нём b и b1) и класс С (с переенной с). И от этих сразу двух классов наследуется ещё класс D. Так вот в этом классе используя переменные из классов В и С найти площадь некой фигуры. Тока непонимаю как оформить все это дело. класс В и С фактически тока рисуются в них ниче писать не надо, я правильно понял, тоесть делаем так, но вот что в майне писать ??? Плиз помогите разобратся. Код:
|
30.04.2009, 13:57 | #6 |
Пользователь
Регистрация: 18.03.2009
Сообщений: 89
|
А зачем у тебя все переменные запиханы в класс A? Так теряется смысл наследования и разбиения на классы. Каждый класс должен содержать только ту информацию, которая используется в нем самом. Все остальное должно добавляться в классах-наследниках. Если нужно использовать данные в какой-нибудь фукнции (например, вывод на экран), заводишь в базовом классе виртуальную функцию, в остальных классах ее перегружаешь и делаешь в ней что нужно.
|
30.04.2009, 16:20 | #7 |
Пользователь
Регистрация: 17.02.2009
Сообщений: 25
|
по условию задачи так, или я непонял что от меня хотят.
|
30.04.2009, 16:36 | #8 |
Пользователь
Регистрация: 18.03.2009
Сообщений: 89
|
Напиши исходное условие задачи, а то ерунда начнется.
|
30.04.2009, 16:54 | #9 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,065
|
Класс A у Вас не абстрактный.
По данному описанию задания нужно что-то вроде: Код:
|
30.04.2009, 20:43 | #10 |
Пользователь
Регистрация: 17.02.2009
Сообщений: 25
|
pu4koff, спасибо еще раз!!!!
Pashan, сорри исходного нету, это дружбан билет пометил попросил сделать а я сам бот. Последний раз редактировалось z3rg; 30.04.2009 в 20:46. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
наследование методов | TaTT DoGG | Общие вопросы .NET | 4 | 27.02.2009 01:27 |
Множественное наследование | Crucian | Общие вопросы Delphi | 1 | 29.12.2008 14:26 |
Наследование CSS | SunKnight | HTML и CSS | 1 | 23.11.2008 01:39 |
Наследование | Кирилл13 | Общие вопросы C/C++ | 1 | 11.11.2008 14:47 |
Классы и наследование. | Scratch | Общие вопросы C/C++ | 9 | 27.09.2008 16:03 |