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

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

Восстановить пароль Регистрация
 
Sillent Div
0 / 0 / 1
Регистрация: 13.07.2013
Сообщений: 58
21.01.2014, 00:24     Параметры шаблона #1
как в общем можно объяснить то что находиться в угловых скобках после template, я понимаю что template <список параметров>
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.01.2014, 00:24     Параметры шаблона
Посмотрите здесь:

C++ параметры шаблона
Инстанцирование шаблона C++
C++ Инстанцирование шаблона
C++ Специализация шаблона
C++ Определение метода-шаблона за пределами шаблона класса
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
cooller
 Аватар для cooller
564 / 532 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
21.01.2014, 00:25     Параметры шаблона #2
Sillent Div, Шаблоны
Sillent Div
0 / 0 / 1
Регистрация: 13.07.2013
Сообщений: 58
21.01.2014, 00:52  [ТС]     Параметры шаблона #3
все это прочитано

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

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

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

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

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

Добавлено через 2 минуты
Да, для передачи параметров классу, можно использовать и такие конструкции:
C++
1
template<unsigned int S>
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2014, 01:59     Параметры шаблона
Еще ссылки по теме:

Специализация шаблона C++
C++ Параметры шаблона
C++ Специализация шаблона

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

Или воспользуйтесь поиском по форуму:
gromo
 Аватар для gromo
366 / 265 / 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; // литерал-факториал стадии компиляции
}
Yandex
Объявления
21.01.2014, 01:59     Параметры шаблона
Ответ Создать тему
Опции темы

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