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

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

Войти
Регистрация
Восстановить пароль
 
Apparat_UA
5 / 5 / 2
Регистрация: 06.01.2015
Сообщений: 166
#1

Доступ к переменным базового класса при наследовании - C++

18.11.2015, 10:22. Просмотров 204. Ответов 2
Метки нет (Все метки)

Есть следующий код
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
class Base
{
protected:
int x;
Base* enemy;
 
public:
Base() {}
~Base() {}
void set_enemy(Base * x) { enemy = x;}
virtual void func() = 0;
};
class Derived : protected Base
{
public:
Derived() {}
~Derived() {}
void func() { cout << enemy->x;} // дебаггер пишет что нет доступа к переменной x
};
 
int main()
{
Base* Object1 = new Derived();
Base* Object2 = new Derived();
Object1->set_enemy(Object2);
Object2->set_enemy(Object1);
Object1->func();
}
Ошибка с функцией void func();
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.11.2015, 10:22
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Доступ к переменным базового класса при наследовании (C++):

Доступ к объекту базового класса при закрытом наследовании - C++
Есть класс Pair из стандартной библиотеки. Он у меня содержит 2 массива valarray. От класса Pair я создаю наследника Wine. В классе Wine...

Доступ к параметрам и функциям базового класса - C++
Собственно вот код: class okno : public zakaz { public: xy razmer; vector &lt;xy&gt; paket; vector &lt;int&gt; impost; vector &lt;xy&gt;...

Доступ к закрытым членам базового класса - C++
помогите понять что я не так сделал ? #include &lt;iostream&gt; using namespace std; class A { int PrA1; public: int...

Наследование классов. Доступ к данным базового класса - C++
Здравствуйте! Застрял на задачке... Суть самого задания: Создать класс Car (машина), который характеризуется торговой маркой (строка),...

Доступ к переменным класса - C++
Давным давно помню была такая фишка в сях, когда приходилось много раз писать конструкцию типа &quot;VarName-&gt;member()&quot; можно было заключить это...

Доступ к данным при наследовании - C++
здравствуйте, есть иерархия классов, схематично можно представить так: namespace Singl { class CObs {}; template&lt;typename T&gt; ...

2
John Prick
803 / 736 / 145
Регистрация: 27.07.2012
Сообщений: 2,108
Завершенные тесты: 3
18.11.2015, 10:26 #2
Сделай наследование открытым:
C++
1
class Derived : public Base
1
Redzep
197 / 133 / 54
Регистрация: 21.12.2014
Сообщений: 369
18.11.2015, 10:27 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Сделай метод get в base для x.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.11.2015, 10:27
Привет! Вот еще темы с ответами:

Ошибка при наследовании класса - C++
Всем доброго времени суток, пытаюсь отнаследовать класс, вот такой код я смастерил: #ifndef CLASS_H_ #define CLASS_H_ class stack ...

Ошибки при наследовании класса - C++
Доброго времени суток!Возникли ошибки при компиляции кода Задание было такое:Создать абстрактный базовый класс Body (тело) с виртуальными...

Ошибки при наследовании класса от вектора - C++
Пишу программу по СМО, столкнулся с трудностью при попытке сделать наследование очередью Cqueue вектора из STL. Проблема состоит в том,...

Деструкторы при наследовании от абстрактного класса - C++
Нужно ли что то писать в деструкторах ~StringObject(){}; ~DoubleObject(){} и нужно ли создавать виртуальный деструктор класса...


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

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

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