Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Sillent Div
0 / 0 / 1
Регистрация: 13.07.2013
Сообщений: 60
#1

Параметры шаблона - C++

21.01.2014, 00:24. Просмотров 281. Ответов 6
Метки нет (Все метки)

как в общем можно объяснить то что находиться в угловых скобках после template, я понимаю что template <список параметров>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.01.2014, 00:24
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Параметры шаблона (C++):

параметры шаблона - C++
1) работа с параметрами шаблона; 2) создайте класс для обьекта типа &quot;муз. проигрыватель&quot;.постройте UMLдиаграмму. напишите реализацию на...

Параметры шаблона - C++
Доброго всем вечера. Вопрос по теории, который не выходит нагуглить. К примеру, нужно хранить статический массив интов с точно известным...

Параметры типа класса шаблона - C++
смотрите был такой код в файле заголовочном: template &lt;typename DataType&gt; class CircleList { ..................... а преподаватель...

Шаблоны как параметры шаблона - C++
Привет, в книге увидел такой пример template&lt;template&lt;typename T&gt; class x&gt; class y; но из объяснений в книге я совершенно...

Почему шаблонный параметр-шаблон не принимает другие параметры шаблона - C++
Т.е. нельзя вместо template &lt;typename T, template &lt;typename _Ty, class _Aloc = allocator&lt;_Ty&gt; &gt; class CONT = vector&gt; class...

Определение метода-шаблона за пределами шаблона класса - C++
День добрый! Разбираюсь в шаблонах, решил копнуть поглубже. Вот пример: template &lt;typename T1&gt; class K // шаблон класса { public:...

6
cooller
565 / 533 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
21.01.2014, 00:25 #2
Sillent Div, Шаблоны
1
Sillent Div
0 / 0 / 1
Регистрация: 13.07.2013
Сообщений: 60
21.01.2014, 00:52  [ТС] #3
все это прочитано

Добавлено через 3 минуты
смысл в том чтобы описать общую конструкцию параметров, то есть что-то на примере temlate <тип+константное выражение>
0
_script_
171 / 139 / 34
Регистрация: 01.05.2012
Сообщений: 414
21.01.2014, 00:56 #4
Цитата Сообщение от Sillent Div Посмотреть сообщение
все это прочитано
И что то осталось не понятным?

Добавлено через 3 минуты
Конструкция такая:
template < далее typename или class и имя>.

для чего это используется?
Для того что бы можно было одну и туже функцию, класс можно было использовать с различными типами, вместо того, что бы писать новые функции и класс для разных типов.
0
Sillent Div
0 / 0 / 1
Регистрация: 13.07.2013
Сообщений: 60
21.01.2014, 01:00  [ТС] #5
я все это понимаю, конструкцию привели не верно т.к может быть <class ..> ,а может быть <int s...> или даже template<template<>>
0
_script_
171 / 139 / 34
Регистрация: 01.05.2012
Сообщений: 414
21.01.2014, 01:11 #6
Цитата Сообщение от Sillent Div Посмотреть сообщение
конструкцию привели не верно т.к. может быть <class ..>
я написал, что или class или template.

я написал как в общем и для чего используют шаблоны.

чего вы спрашиваете, если сами все знает?

Добавлено через 2 минуты
Да, для передачи параметров классу, можно использовать и такие конструкции:
C++
1
template<unsigned int S>
0
gromo
372 / 271 / 24
Регистрация: 04.09.2009
Сообщений: 1,214
21.01.2014, 01:59 #7
Цитата Сообщение от Sillent Div Посмотреть сообщение
или даже template<template<>>
или даже
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
template <typename t>
constexpr t pow(t base, int exp) {
  return (exp > 0) ? base * pow(base, exp-1) : 1;
}
 
template <char...> struct literal;
template <> struct literal<> {
  static constexpr unsigned int to_int = 0;
};
template <char c, char ...cv> struct literal<c, cv...> {
  static constexpr unsigned int to_int = (c - '0') * pow(10, sizeof...(cv)) + literal<cv...>::to_int;
};
 
template <int N> struct factorial {
  static constexpr unsigned int value = N * factorial<N - 1>::value;
};
template <> struct factorial<0> {
  static constexpr unsigned int value = 1;
};
 
template <char ...cv>
constexpr unsigned int operator "" _fac()
{
  return factorial<literal<cv...>::to_int>::value;
}
int main()
{
    cout << 5_fac << endl; // литерал-факториал стадии компиляции
}
0
21.01.2014, 01:59
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2014, 01:59
Привет! Вот еще темы с ответами:

Инстанцирование шаблона - C++
Существует шаблон следующего вида: template&lt;class T, int size&gt; void foo(T (&amp;array)) { cout &lt;&lt; size &lt;&lt; endl; } И следующий...

Шаблона функція - C++
Поможіть рішити. Задана матриця A(n,n),n&lt;=15 . Розробити шаблонну функцію побудови вектора B,i=1,2,n, за правилом:B дорівнює ...

Специализация шаблона - C++
Здравствуйте! Задача: Создайте шаблонную функцию maxn(), которая принимает в качестве аргумента массив элементов типа Т и целое...

Друг шаблона - C++
Всем доброго дня !! Подскажите пожалуйста в чем может быть проблема ? когда блокирую 64 строку - то все нормально ((( при...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru