0 / 0 / 1
Регистрация: 10.01.2013
Сообщений: 9
1

Наследование и шаблоны

12.07.2013, 17:59. Показов 571. Ответов 2
Метки нет (Все метки)

Почему при использовании шаблонов при обращении к элементам класса нужно явно указывать потомка или this?
Ведь при наследовании без шаблонов этого делать не надо.
C++
1
2
3
4
5
6
7
8
9
10
11
template <int T>
struct a {
    int value;
};
 
template <int T>
struct b : a<T> {
    int anotherval  = this->::value;  // компилируется
    int another_val = a<T>::value;    // компилируется
    int anotherVal  = value;          // не компилируется
};
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.07.2013, 17:59
Ответы с готовыми решениями:

Наследование и шаблоны
Доброе время суток. Есть три класс: interface.h template &lt;class T&gt; class interface ...

Наследование и шаблоны
Здравствуйте. У меня возникла проблема. Есть 4 класса: Father - абстрактный шаблонный класс...

Шаблоны и наследование
Есть код с учебника: #include &lt;iostream&gt; #include &lt;typeinfo&gt; #include &lt;cstdlib&gt; #include...

Наследование и шаблоны
Не понимаю почему выдается ошибки, переменные а, b не объявлены в данном контексте (внутри функции...

2
3254 / 2056 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
12.07.2013, 18:21 2
Подробно расписано у Вандервуда (Шаблоны С++. Справочник разработчика. 9.4.2 Зависимые базовые классы). Для использования достаточно запомнить, что просто так надо)
1
В астрале
Эксперт С++
8045 / 4802 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
12.07.2013, 19:44 3
Подробно довольно расписано тут: http://clang.llvm.org/compatib... okup_bases
2
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.07.2013, 19:44
Помогаю со студенческими работами здесь

Наследование и шаблоны
Доброго времени суток всем! Требуется внести ясность в следующую задачу. Существует абстрактный...

Наследование, шаблоны классов
Все привет. Есть два шаблона классов, один наследует другой. Первый класс абстрактный, содержит...

Функциональные шаблоны и наследование
#include &lt;list&gt; using namespace std; class A { public: virtual void doit() =0;...

Шаблоны классов, наследование и использование this
Привет, есть такой код: #include &lt;iostream&gt; template &lt;typename T&gt; struct B { void exit();...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru