Templates: различия между версиями
Материал из fidoman.ru
Sergey (обсуждение | вклад) (Новая страница: «Классические шаблоны C++ - при использовании происходит инстанциация, генерация кода в со...») |
(нет различий)
|
Текущая версия на 22:57, 16 января 2024
Классические шаблоны C++ - при использовании происходит инстанциация, генерация кода в соответствии с переданным типов.
Лёгкие шаблоны
- тип-аргумент используется только как указатель на него. Фактически от типа код не зависит от переданного типа, но позволяет гарантировать соответствие типа, передаваемого по указателю.
- тип-аргумент является потомком указанного в шаблоне типа (фиксированного). Таким образом шаблон может использовать свойства базового типа, но при этом обеспечивать инвариантность получаемых и возвращаемых значений. (при отсутствии шаблона тип можно проверить только в рантайме)