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

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

Войти
Регистрация
Восстановить пароль
 
Stalin45
2 / 2 / 0
Регистрация: 24.04.2011
Сообщений: 66
#1

Доступ внука к Protected - C++

21.08.2011, 02:28. Просмотров 601. Ответов 6
Метки нет (Все метки)

Здравствуйте, сегодня встал перед такой проблемой.
Дело в том, что создал класс, наследующий public доступом по цепочке (внук). Но если сын мог использовать protected отца, я ожидал, что и внук сможет...компилятор ругается (множественное наследование применять не хочу). Пришлось сунуть поля из protected в public.
Подскажите пожалуйста, быть может, я что-то упустил? Каким способом можно было ещё соединить внука с protected деда?

P.S. компилятор Borland C++ v.3.0
Спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.08.2011, 02:28
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Доступ внука к Protected (C++):

c++ доступ к protected свойствам - C++
давайте рассмотрим доступ к protected свойствам и методам класса известно что напрямую их вызвать можно только внутри класса...

Доступ к protected полям - C++
Добрый день! Очень не часто пишу что-то на C++ и вот такой момент настал :) Существует некий абстрактный класс содержащий указатель на...

доступ к protected функции из потомка - C++
Есть базовый класс parent. У него есть метод func. Нужно дать потомкам parent, доступ к func у объектов типа parent. А всем остальным...

Шаблонный Список. не могу получить доступ к protected членам - C++
Здравствуйте! Я пытаюсь сделать шаблонный список, все вроде бы пашет. но есть 2 проблемы. 1. Все работает но только если члены...

Почему не могу получить доступ к protected полям из дочернего класса? - C++
Пытаюсь получить доступ к ships из дочернего класса Referee, но не получается. В чем ошибка? class Player { protected: ...

protected или не protected : ) - C++
собстно не могу решить как поступить. есть абстрактный класс окошка, являющийся базовым для всех окошек. есть 3 варианта...

6
alex_x_x
бжни
2447 / 1652 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
21.08.2011, 02:37 #2
скорее всего проблема в компиляторе

http://codepad.org/FL0UoEjj
1
Nameless One
21.08.2011, 07:34
  #3

Не по теме:

Цитата Сообщение от Stalin45 Посмотреть сообщение
P.S. компилятор Borland C++ v.3.0
Уже эти строки должны были насторожить внимательного читателя...

0
Stalin45
2 / 2 / 0
Регистрация: 24.04.2011
Сообщений: 66
21.08.2011, 12:17  [ТС] #4
Хм, понятно, спасибо, попробую установить MVS. Но по самой идее: внук должен иметь доступ к protected???
Посмотрел ссылку, все ясно, вопрос снимаю =(
0
kazak
3035 / 2356 / 155
Регистрация: 11.03.2009
Сообщений: 5,402
Завершенные тесты: 1
21.08.2011, 12:37 #5
Цитата Сообщение от Stalin45 Посмотреть сообщение
Но по самой идее: внук должен иметь доступ к protected???
Будет зависеть от того, какой тип наследования у его родителя.
0
Stalin45
2 / 2 / 0
Регистрация: 24.04.2011
Сообщений: 66
21.08.2011, 19:58  [ТС] #6
Если тип наследования - public (доступно все кроме private)///class b : public a
Если private (только protected доступен)./////////////////////////class b : private a
Если protected (я так понимаю, что только public)///////////////class b : protected a
Если внук наследует через public, то, насколько я понимаю, все вышенаписанное распространяется и на него?///class c : public b
0
LosAngeles
Заблокирован
21.08.2011, 20:09 #7
наследуй всё через паблик и не парься. В джаве к слову сказать только так и можно
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.08.2011, 20:09
Привет! Вот еще темы с ответами:

Ромбовидное наследование. Конструктор внука. - C++
если хотите, можете почитать код - он довольно объёмный...но однотипный #include "stdafx.h" #include <iostream> #include <string> ...

Доступ к protected членам базового класса - C++
Здравствуйте, форумчане! Ниже приведенный код при компиляции вызывает следующую ошибку: error C2248: 'Element::AddTo' : cannot access...

PROTECTED - C++
есть два класса: class Base{ private: int age; }; class Derived: public Base{ .......

Protected Struct - C++
Привет народ. Сижу тут с классами корочь, и вдруг вылезла ошибка (типа нет доступа), но никак не могу понять почему: ошибка в 33-й строке,...


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

Или воспользуйтесь поиском по форуму:
7
Yandex
Объявления
21.08.2011, 20:09
Ответ Создать тему
Опции темы

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