Какие бывают виды шаблонов (templates) в C++?

В c++ есть шаблоны классов (сюда же структур) и функций. Я узнал, что это не все виды шаблонов (templates), но нигде не могу найти остальные. По запросу

шаблоны c++

Как раз выдает те самые шаблоны классов и функций. Есть еще шаблоны функций-членов класса, но это, мне кажется, не все виды шаблонов. Какие еще виды шаблонов бывают? Можно полный список?


Ответы (1 шт):

Автор решения: sprut

Под шаблоном (template) понимают:

  1. Шаблон класса (class template),
  2. Шаблон функции (function template),
  3. Шаблонный псевдоним типа (alias template),
  4. Шаблон переменной (variable template),
  5. концепт (concept).

Под шаблонным объектом (templated entity) понимают:

  1. Любой шаблон;
  2. Всякий член (member) шаблонного объекта;
  3. Enumerator (член перечисления (enum), не знаю устоявшегося русского названия)
  4. Перечисления, которое является шаблонным объектом;
  5. Любой объект (entity), определённый или созданный внутри шаблонного объекта;
  6. Тип замыкания (closure type) лямбда-выражения в объявлении шаблонного объекта.

Источник

→ Ссылка