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

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

Восстановить пароль Регистрация
 
i8086
0 / 0 / 0
Регистрация: 10.01.2013
Сообщений: 9
12.07.2013, 17:59     Наследование и шаблоны #1
Почему при использовании шаблонов при обращении к элементам класса нужно явно указывать потомка или 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;          // не компилируется
};
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.07.2013, 17:59     Наследование и шаблоны
Посмотрите здесь:

Наследование и шаблоны C++
C++ Не могу разобраться с ошибками, наследование и шаблоны
C++ Шаблоны, наследование и размер типа
Шаблоны и наследование C++
C++ Функциональные шаблоны и наследование
Наследование и шаблоны C++
Наследование и шаблоны C++
C++ [Классы, Наследование, Шаблоны] Добавление записи в список

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
12.07.2013, 18:21     Наследование и шаблоны #2
Подробно расписано у Вандервуда (Шаблоны С++. Справочник разработчика. 9.4.2 Зависимые базовые классы). Для использования достаточно запомнить, что просто так надо)
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
12.07.2013, 19:44     Наследование и шаблоны #3
Подробно довольно расписано тут: http://clang.llvm.org/compatibility....p_lookup_bases
Yandex
Объявления
12.07.2013, 19:44     Наследование и шаблоны
Ответ Создать тему
Опции темы

Текущее время: 15:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru