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

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

Войти
Регистрация
Восстановить пароль
 
i8086
0 / 0 / 0
Регистрация: 10.01.2013
Сообщений: 9
#1

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

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

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

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

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

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