![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
vadiml |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 310 Регистрация: 27.7.2007 Репутация: 2 Всего: 7 |
мне нужно получить доступ из-вне класса к функциям, расположенным в protected.
я для этого создал дочерний класс, где прописал inline функции с такими же именами, которые являются просто вызовом функций родительского класса. Но некоторые функции используют enum-ы, расположенные в protected, можно ли их вытянуть в public ? |
|||
|
||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
vadiml |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 310 Регистрация: 27.7.2007 Репутация: 2 Всего: 7 |
это ни чего не даёт, компилятор так же ругается:
/usr/include/QtGui/qabstractslider.h:137: ошибка: ‘enum QAbstractSlider::SliderChange’ is protected emun как был в protected, так и остался конкретнее -- это: это enum SliderChange класса QAbstractSlider. (Qt4) в нём в секции protected есть функция virtual void sliderChange(SliderChange change); я создаю класс MyQAbstractSlider в котором в секции public пишу: virtual void sliderChange(SliderChange change) { QAbstractSlider:: SliderChange(change); } |
|||
|
||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
typedef до или после объявления ф-ции?
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
vadiml |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 310 Регистрация: 27.7.2007 Репутация: 2 Всего: 7 |
я такое на всякий случай перепроверял, писал до
но typеdef -- это фактически синоним, он не меняет возможности доступа. |
|||
|
||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
vadiml, что-то я туплю малость
![]() Есть специальная для этого конструкция:
Это сообщение отредактировал(а) archimed7592 - 22.1.2008, 23:05 -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
vadiml |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 310 Регистрация: 27.7.2007 Репутация: 2 Всего: 7 |
такое компилятор съел
как-то не думал ранее про такое использование using, завтра буду подробнее пробовать спасибо |
|||
|
||||
archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
Любой, соответствующий Стандарту обязан "съесть". Т.е., в принципе, тебе даже не нужно писать inline заглушки - только конструкторы и using нужных тебе protected функций и/или типов. -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |