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

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

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

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

04.11.2010, 22:25. Просмотров 383. Ответов 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() не пишу, и компилятор на это ругается.
И еще если инициализировать функцию не у класса А , а сразу у класса В то можно ли так.
За ранее спасибо!!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.11.2010, 22:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Наследование (C++):

Заменить наследование классов на наследование интерфейсов - C++
#include <iostream> #include <assert.h> using namespace std; int people_on_base = 100; int vehicles_on_base = 100; double...

Наследование - C++
char* Texts :: SetBit() { char a; int b; cout << "Получаем битовую строку" << endl; cin >> a; b = strlen(a);...

наследование - C++
Пытаюсь разобраться в наследовании Есть класс class File { public: struct comp { char num; // Имя переменной char st;...

Наследование - C++
Всем привет. Может кто нибудь подсказать с чего начать при создании класса для работы с файлами на подобии ostream( а точнее как правильно...

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

Наследование?! - C++
привет всем. Есть класс Circle c1, c2, c3 Нужно реализовать через наследование класс множество, прошу помочь как он будет выглядеть...

7
CyBOSSeR
Эксперт С++
2305 / 1675 / 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++?
1
PointsEqual
04.11.2010, 22:53
  #3

Не по теме:

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

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

наследование - C++
Как наследовать классы с использованием виртуальных функций? Можете привести пример?

наследование в С++ - C++
Добрый вечер. относительно недавно мною была получена задача, а точнее несколько задач в одной...И как это ни печально звучит, проблемы...

наследование - C++
помогите пожалуйсто дописать класс многоугольников , и рисовать на монитор с помощью mfc , заранее благодарен... class figure{ public: ...

Наследование в C++ - C++
Прошу помощи, ибо С++ не моё, а лабораторные работы девушке сдавать надо: Создать 1 базовый класс и несколько производных. Все...


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

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

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