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

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

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

Наследование - C++

04.11.2010, 22:25. Просмотров 371. Ответов 7
Метки нет (Все метки)

Вопрос про главный смысл наследования:
Если в классе А создаешь функцию то нужно ли в классе В ее снова писать, вот пример:

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
class A:
{
A();
 
virtual void print();
 
~A();
};
 
A :: print()
{
printf("dddd");
}
class B : A
{
B();
//........
.........
};
 
B :: print()
{
printf();
printf();
}
Здесь в классе В я функцию print() не пишу, и компилятор на это ругается.
И еще если инициализировать функцию не у класса А , а сразу у класса В то можно ли так.
За ранее спасибо!!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.11.2010, 22:25     Наследование
Посмотрите здесь:

Наследование наследование ) - C++
Доброе время суток всем! Делаю одно задание и столкнулся с вопросом У меня есть клас Person и клас avto со множивстом динамических и...

Наследование - C++
Привет! Есть следующая ситуация: class Counter { protected: unsigned int count; public: Counter(): count(0) {} ...

Наследование - C++
Если я объявлю класс A, как базовый для класса B, то есть вот так: class B : public A { ... }; То в методах класса B будут...

наследование - C++
Доброго времени суток всем. У меня такая проблема: написал класс L2 список символов. На его основе требуется сделать дек символов. Кроме...

Наследование - C++
Реализовать наследование классов, их констркторов, и если необходимо деструкторов, для своего варианта. Продемонстрировать в программе...

Наследование - C++
Помогите пожалуйста вот с такой задачей: Надо создать класс треугольник. Вводим три стороны и находим периметр и градусы углов. Потом...

наследование - C++
Всем привет.Проблема в том, что у меня не сравниваются числа в классе Fraction.Я просто не знаю,как правильно это сделать.Подскажите...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CyBOSSeR
Эксперт C++
2300 / 1670 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
04.11.2010, 22:50     Наследование #2
WinTWISTER,
Цитата Сообщение от WinTWISTER Посмотреть сообщение
C++
1
2
3
4
A :: print()
{
printf("dddd");
}
Что это за загадочная функция не указывающая тип возвращаемого значения?
Цитата Сообщение от WinTWISTER Посмотреть сообщение
C++
1
2
printf();
printf();
Что это за не менее загадочная функция printf, не принимающая никаких аргументов?

Цитата Сообщение от WinTWISTER Посмотреть сообщение
И еще если инициализировать функцию не у класса А , а сразу у класса В то можно ли так.
Вы о чем вообще? Что есть "инициализировать функцию"?

И главный вопрос: Вы пробовали хоть что-нибудь читать по языку C++?
PointsEqual
04.11.2010, 22:53
  #3

Не по теме:

Цитата Сообщение от CyBOSSeR Посмотреть сообщение
Что это за не менее загадочная функция printf, не принимающая никаких аргументов?
хорошее замечание)))))))

WinTWISTER
1 / 0 / 0
Регистрация: 04.11.2010
Сообщений: 13
04.11.2010, 22:59  [ТС]     Наследование #4
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
class A:
{
A();
 
virtual void print();
 
~A();
};
 
void A :: print()
{
printf("dddd");
}
 
 
class B : A
{
B();
//........
.........
};
 
void B :: print()
{
printf("dddd");
printf("dddd");
}
CyBOSSeR
Эксперт C++
2300 / 1670 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
04.11.2010, 23:09     Наследование #5
WinTWISTER, уже лучше.
Цитата Сообщение от WinTWISTER Посмотреть сообщение
A();
Цитата Сообщение от WinTWISTER Посмотреть сообщение
~A();
Цитата Сообщение от WinTWISTER Посмотреть сообщение
B();
Вопрос №1: Реализация где?
Вопрос №2: Для чего Вам понадобились свои конструкторы и деструкторы?
WinTWISTER
1 / 0 / 0
Регистрация: 04.11.2010
Сообщений: 13
04.11.2010, 23:14  [ТС]     Наследование #6
разьве вопрос был в этом? я спросил: при наследовании у класса А классом В всех функций, нужно ли писать в классе В прототипы этих функций? и все!! все остальное не важно
CyBOSSeR
Эксперт C++
2300 / 1670 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
04.11.2010, 23:15     Наследование #7
Цитата Сообщение от WinTWISTER Посмотреть сообщение
нужно ли писать в классе В прототипы этих функций?
Если в классе B они переопределяются - да.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.11.2010, 23:18     Наследование
Еще ссылки по теме:

Наследование - C++
Не могу понять в чем ошибка. #include <iostream> #include <string> using namespace std; class Auto { protected: string...

Наследование - C++
Какой практический смысл private-наследования? (Понятно, что это инкапсуляция базового класса)

Наследование в С++ - C++
Здравствуйте! #include <iostream> using namespace std; class exp{ public: virtual exp* diff()=0; virtual void...

Наследование - C++
Прошу помочь реализовть программу. Задание на русском: Разработать класс CFile,который инкапсулирует в себя такие функции работы с...

Наследование - C++
Суть задачи: Реализуйте класс символьная строка,наследуйте от него класс двоичная строка. Реализуйте методы Show(от базовой строки) ...


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

Или воспользуйтесь поиском по форуму:
WinTWISTER
1 / 0 / 0
Регистрация: 04.11.2010
Сообщений: 13
04.11.2010, 23:18  [ТС]     Наследование #8
спасибо
Yandex
Объявления
04.11.2010, 23:18     Наследование
Ответ Создать тему
Опции темы

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