41 / 41 / 11
Регистрация: 02.04.2016
Сообщений: 308
|
||||||||||||||||
1 | ||||||||||||||||
Base-Protected-поле доступно в Derived, но недоступно, если Base и Derived определены вложенными в шаблон класса Wrap31.08.2017, 00:26. Показов 1197. Ответов 12
Метки нет Все метки)
(
Ситуация такая:
Кликните здесь для просмотра всего текста
Эта штука работает. Если обернуть это во Wrap, то всё до сих пор работает: Кликните здесь для просмотра всего текста
Стоит сделать класс Wrap шаблоном, как поле x оказывается недоступным:Код
error: 'x' was not declared in this scope cout << "Change X: " << ++x << endl; ^ Кликните здесь для просмотра всего текста
Если попытаться указать, что Derived наследуется именно от Wrap<T> (Wrap<T>::Base ), то результат тот же. Что я делаю не так и почему?
0
|
|
31.08.2017, 00:26 | |
Ответы с готовыми решениями:
12
Cast to Base class from Derived class Поле protected доступно в другом объекте другого класса? derived class 10 BASE 5 и 10 BASE FL материал для курсовой работы |
41 / 41 / 11
Регистрация: 02.04.2016
Сообщений: 308
|
|
31.08.2017, 00:42 [ТС] | 3 |
Если это претензия про инициализацию, то давайте опустим банальности - она есть, конечно же.
0
|
![]() 8737 / 4315 / 960
Регистрация: 15.11.2014
Сообщений: 9,762
|
||||||
31.08.2017, 00:45 | 4 | |||||
![]() Решение
Почему компилируется не объявленная переменная в шаблоне?
1
|
41 / 41 / 11
Регистрация: 02.04.2016
Сообщений: 308
|
|
31.08.2017, 01:07 [ТС] | 6 |
Забавно. Как исправить - понятно, но почему это так - до сих пор не интуитивно.
Можете привести простенький пример, где эта особенность будет явно очевидна? Может, что-то со специализацией обёртки?
0
|
![]() 8737 / 4315 / 960
Регистрация: 15.11.2014
Сообщений: 9,762
|
|
31.08.2017, 03:01 | 7 |
0
|
41 / 41 / 11
Регистрация: 02.04.2016
Сообщений: 308
|
|
31.08.2017, 10:31 [ТС] | 9 |
Окей. Ниже я увидел выписку из стандарта. Если более развёрнутого описания мне не суждено увидеть, то ограничусь только ссылкой на стандарт. Благодарю.
0
|
41 / 41 / 11
Регистрация: 02.04.2016
Сообщений: 308
|
|
31.08.2017, 10:47 [ТС] | 11 |
Я и имел в виду тот пост. Это объяснение "на пальцах" мне не совсем понятно, так как я не знаком с шаблонами настолько плотно, чтобы представить варианты "небо" и "земля". Может, в какой-то книге это описано лучше?
0
|
18161 / 9494 / 2322
Регистрация: 30.01.2014
Сообщений: 16,599
|
|
31.08.2017, 10:55 | 12 |
![]() Решение
1
|
41 / 41 / 11
Регистрация: 02.04.2016
Сообщений: 308
|
|
31.08.2017, 11:02 [ТС] | 13 |
0
|
31.08.2017, 11:02 | |
Помогаю со студенческими работами здесь
13
Protected abstract virtual base pure virtual private destructor Поменять местами поле в таблице Libre Base Base Url класса /index.php?data=s1/ Обращение к методам базового класса (есть ли подобие base/super?)
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |