Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
_24-29_ООП_MatiasRust_DC_CT_LE_LcMS.doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
122.88 Кб
Скачать

Int I, // параметр обычного типа

T1 DefaultValue, // параметр обычного типа

template <class> class T3, // параметр-шаблон

class Character = char> // параметр по умолчанию

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

Если в шаблоне класса или функции необходимо использовать один и тот же шаблон, но с разными параметрами, то используются параметры-шаблоны. Например:

template < class Type, template <class> class Container >

class CrossReferences {

Container <Type> mems; Container <Type*> refs;

};

CrossReferences < Date, vector > cr1;

CrossReferences < string, set > cr2;

Нельзя использовать шаблоны функций в качестве параметров-шаблонов.

Хотя шаблоны и предоставляют краткую форму записи участка кода, на самом деле их использование не сокращает исполнимый код, так как для каждого набора параметров компилятор создаёт отдельный экземпляр функции или класса.