495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
|
|||||||||||
1 | |||||||||||
Что означает using typename в шаблоне?01.12.2015, 10:59. Показов 5009. Ответов 25
Метки нет (Все метки)
0
|
01.12.2015, 10:59 | |
Ответы с готовыми решениями:
25
Шаблоны. Что лучше <class T> или <typename T>? Поясните пожалуйста что означает двоеточие и то что идет после него скажите пожалуйста, что означает здесь b. ,это какия-либо функция или что? Что означает запись в скобках и что возвращает return |
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
01.12.2015, 11:07 | 2 |
Сообщение было отмечено _Valera_ как решение
Решение
C++ 11/ Замена typedef ==> сделали синоним типа T, обозвав его value_type
1
|
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
|
|
01.12.2015, 11:09 [ТС] | 3 |
daslex, а в чем смысл?
0
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
||||||
01.12.2015, 11:19 | 4 | |||||
Автор кода решил, что ему value_type понятнее чем T,
смысл абсолютно тот же, что у typedef, только синтаксис немного удобнее. можно было сразу написать
Добавлено через 1 минуту Конкретно в этом случае весь смысл - выпендреж. Не по теме: "Я умею юзать С++11, глядите, ущербные."
2
|
daslex
|
01.12.2015, 11:35
#6
|
Не по теме: я тоже об этом думал, но демонстрация знаний С++11 как-то солиднее. Может вообще из видеоуроков ютуба зацепилось и тащится.
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
01.12.2015, 11:37 | 7 |
daslex,
Ага, конечно же, а потом попробуйте к этому value_type достучаться извне, в коде который представлен это возможно.
4
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
||||||
01.12.2015, 11:47 | 8 | |||||
Вообще не понял.
1
|
Неэпический
|
|||||||||||
01.12.2015, 12:05 | 9 | ||||||||||
daslex, value_type становится виден извне:
2
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
01.12.2015, 12:15 | 10 |
нет. не понятен. Понятно стало, что именно нельзя, но совсем непонятно когда оно надо.
1
|
2549 / 1208 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
|
||||||
01.12.2015, 12:28 | 12 | |||||
2
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
01.12.2015, 12:35 | 13 |
Croessmah, Это плохой пример на вопрос "Зачем"? Потому что намного проще создать переменную unsigned int или size_t.
1
|
18840 / 9839 / 2408
Регистрация: 30.01.2014
Сообщений: 17,280
|
||||||
01.12.2015, 12:41 | 14 | |||||
2
|
Неэпический
|
||||||
01.12.2015, 12:46 | 15 | |||||
Если тип известен.
Да там и нет примера. Ну вот hello world пример.
1
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
01.12.2015, 12:47 | 16 |
DrOffset, я о доступе извне. Вообще понял, просто тот первый "пример-не пример" от Croessmah, немного это скрывает из-за слишком сильной упрощенности (оно не очевидно становится).
А Ваш пример к чему, не понял.
0
|
18840 / 9839 / 2408
Регистрация: 30.01.2014
Сообщений: 17,280
|
|
01.12.2015, 12:50 | 17 |
К тому, зачем нужен value_type.
О каком доступе извне ты говоришь? Мой пример иллюстрирует именно то, о чем говорил ForEveR: у нас есть шаблонный класс, например вектор, тип элемента был передан ему в параметре шаблона. Теперь нам надо узнать, какой тип элемента у типа вектора, чтобы использовать его, например, в другой функции. Для этого и нужен value_type, который нам подскажет "извне" вектора какой у него тип элемента. Мой пример это демонстрирует.
1
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
01.12.2015, 13:01 | 19 |
Не по теме: как написано было, так и спрашиваю. Об этом же дальше мне отвечают, судя по моему вопросу. Или кашеварим? Добавлено через 59 секунд ясно.
0
|
18840 / 9839 / 2408
Регистрация: 30.01.2014
Сообщений: 17,280
|
||||||
01.12.2015, 13:08 | 20 | |||||
daslex, наши с Croessmah примеры иллюстрируют абсолютно одинаковое.
value_type - это тип, это не переменная.
value_type == T А теперь попробуйте к этому value_type (T, типу который был передан в шаблон Vector) достучаться извне. Так понятно ?
1
|
01.12.2015, 13:08 | |
01.12.2015, 13:08 | |
Помогаю со студенческими работами здесь
20
Что такое #, include, что это означает Что-то в шаблоне не так Что означает %s в шаблоне WordPress? Что означает появление письменности (языка), и что означает реформа письменности (языка)? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |