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

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

Войти
Регистрация
Восстановить пароль
 
jake.spb
0 / 0 / 0
Регистрация: 09.08.2012
Сообщений: 7
#1

Наследование объекта - C++

09.08.2012, 16:32. Просмотров 344. Ответов 6
Метки нет (Все метки)

Народ, помогите пожалуйста. Вопрос в следующем. Есть абстрактный базовый класс BaseClass, в нем объявлен объект Timer класса TTimer, который, в свою очередь имеет свои методы (Start(), Match(), и т.д.). У базового класса есть множество потомков. Будет ли при создании экземпляров потомков создаваться новый экземпляр класса TTimer (или мы будем иметь дело лишь с объявленным объектом в базовом классе?).

Код:
class BaseClass {
protected:
TTImer Timer;
};

class ChildClass1 : public BaseClass {
public:
void StartTimer() { Timer.Start(10); };
};

class ChildClass2 : public BaseClass {
public:
void StartTimer() { Timer.Start(20); };
};

BaseClass * obj1 = new ChildClass1;
BaseClass * obj2 = new ChildClass2;

obj1->StartTimer();
obj2->StartTimer();


Знаю, вопрос не самый оригинальный, но для этого, ведь, и есть раздел новичков. ) Спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.08.2012, 16:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Наследование объекта (C++):

Как используя закрытое наследование использовать 2 объекта базового класса? - C++
Доброго времени суток. Учусь по книге "Прата С. Язык программирования C++. Лекции и упражнения. Не могу понять упражнение...(глава 14,...

Что делать если нужно знести информацию в 2 разных объекта базового класса при закрытом наследование - C++
Что делать если нужно знести информацию в 2 разных объекта базового класса при закрытом наследование? Например мне нужно держать скажем имя...

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

Требуется ли при удалении объекта посредством delete указывать тип объекта? - C++
например, есть указателиvoid *p1; void *p2; есть VCL-объект TButton, есть самописный класс TMyClass; создаются объектыp1=new...

Как правильно вызывать функцию объекта из другой функции того же объекта? - C++
Доброго дня и ночи, уважаемые программисты! Существует некоторая проблема, на которую я наткнулся, решая задачу по программированию из...

При возврате объекта из функции пишет, что для объекта не определен констуктор копирования - C++
Пишу шаблонный класс матриц. Делаю, значит, переопределение оператора + для двух матриц одного типа. Но компилятор ругается на эту функцию ...

6
John Prick
821 / 754 / 152
Регистрация: 27.07.2012
Сообщений: 2,147
Завершенные тесты: 3
09.08.2012, 16:35 #2
Цитата Сообщение от jake.spb Посмотреть сообщение
Будет ли при создании экземпляров потомков создаваться новый экземпляр класса TTimer (или мы будем иметь дело лишь с объявленным объектом в базовом классе?).
Поясните свою мысль. Как-то совсем не понятно, что вы спрашиваете.
Каждый объект производных классов будет содержать в себе объект TTimer.
0
jake.spb
0 / 0 / 0
Регистрация: 09.08.2012
Сообщений: 7
09.08.2012, 16:38  [ТС] #3
Цитата Сообщение от John Prick Посмотреть сообщение
Поясните свою мысль. Как-то совсем не понятно, что вы спрашиваете.
Каждый объект производных классов будет содержать в себе объект TTimer.
Это понятно, но будет ли это новый экземпляр класса TTimer для каждого потомка?
0
John Prick
821 / 754 / 152
Регистрация: 27.07.2012
Сообщений: 2,147
Завершенные тесты: 3
09.08.2012, 16:39 #4
Что значит новый? Он будет у каждого свой, а не один на всех.
0
jake.spb
0 / 0 / 0
Регистрация: 09.08.2012
Сообщений: 7
09.08.2012, 16:42  [ТС] #5
Цитата Сообщение от John Prick Посмотреть сообщение
Что значит новый? Он будет у каждого свой, а не один на всех.
То есть для каждго экземпляра любого из потомков они будут разные и будут работать независимо друг от друга? Если это так, то это все, что я хотел узнать )
0
John Prick
821 / 754 / 152
Регистрация: 27.07.2012
Сообщений: 2,147
Завершенные тесты: 3
09.08.2012, 16:44 #6
Цитата Сообщение от jake.spb Посмотреть сообщение
То есть для каждго экземпляра любого из потомков они будут разные и будут работать независимо друг от друга?
Да. Именно так.
1
jake.spb
0 / 0 / 0
Регистрация: 09.08.2012
Сообщений: 7
09.08.2012, 16:45  [ТС] #7
Цитата Сообщение от John Prick Посмотреть сообщение
Да. Именно так.
Спасибо )
0
09.08.2012, 16:45
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.08.2012, 16:45
Привет! Вот еще темы с ответами:

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

Вывод данных вложенного объекта из другого объекта - C++
Добрый День! Хочу в одном объекте вывести текст который находится во вложенном объекте. Помогите ,пожалуйста, понять в чем ошибка. ...

Передача объекта методу другого объекта другого класса - C++
Всем привет. Есть у меня класс test1, который имеет конструкторы только с параметрами. Другой класс test2 имеет конструктор, который...

Наследование - C++
Помогите найти ошибку, уже голову сломал... Вот код: main.cpp #include "header.h" int main() { int i, y; car...


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

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

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