Шаблоны
Ключевое слово template используется для создания обобщённых функций и классов. Тип данных, обрабатываемый обобщённой функцией или классом, задаётся как параметр. Следовательно, одно определение функции или класса можно использовать с несколькими типами данных. Шаблоны функцийОбщая форма определения шаблонной функции имеет следующий вид. tetemplate Здесь тип означает метку - заполнитель для типа данных, с которыми эта функция фактически будет иметь дело. В операторе template можно определить несколько параметров-типов данных, используя форму списка элементов, разделённых запятыми. Рассмотрим пример. template При необходимости указания нескольких шаблонных типов, их можно перечислять через запятую, при это перед каждым именем, ставить слово class. Например. Шаблоны классовОбщая форма определения шаблонного класса следующая. template Здесь тип_данных является меткой-заполнением для типа данных, с которым этот класс будет работать. При объявлении объекта обобщённого класса тип данных нужно задать в угловых скобках, используя следующую общую форму. имя_класса<тип_данных> объект; Рассмотрим пример. template Ключевое слово exportКлючевое слово export может предварять объявление template. Оно позволяет другим файлам использовать шаблон, объявленый в другом файле путём задания лишь его объявления (вместо дублирования его полного объявления). Ключевое слово typenameЯзык C++ поддерживает ключевое слово typename, которое можно использовать вместо ключевого слова class в объявлении template или для обозначения неопределённого типа. |
Нет комментариев. Оставить комментарий: |