ВУЗ:
Составители:
Рубрика:
Андрианова А.А., Исмагилов Л.Н., Мухтарова Т.М.
• Для действительных чисел;
• Для комплексных чисел (комплексное число
хранится в структуре, содержащей реальную и мнимую
части).
1.4. Шаблоны функций
Шаблоны функций определяют обобщенное описание функций, т.е.
описание для обобщенного типа данных. При вызове шаблона функции
указывается конкретный тип данных (int, double или любой
пользовательский тип – структура или класс), который подставляется на
место обобщенного типа. Таким образом, компилятор генерирует
функцию для этого конкретного типа. Подставляя разные типы данных,
можно создать множество функций на основе шаблона, реализующих
единый алгоритм.
Шаблоны функций выполняют то же назначение, что и перегрузка
функций. Однако здесь имеются и существенные отличия. Во-первых,
при перегрузке функций их реализация может различаться, шаблон же
определяет единый алгоритм для любых типов данных. Во-вторых,
шаблоны определяют множество функций с одинаковым количеством
параметров, а при перегрузке функций количество параметров может
быть разным.
Шаблон функции определяется следующим образом:
template <список_обобщенных_типов>
тип_функции имя_функции(список_параметров)
{
. . .
}
список_обобщенных_типов :=
class T1 [,class T2, . . ., class TN], Ti –
произвольный идентификатор обобщенного типа;
тип_функции – тип возвращаемого значения, в качестве которого
может быть указан как конкретный тип данных, так и один из списка
обобщенных типов;
список_параметров – список формальных параметров шаблона
функции, которые могут быть описаны как с указанием конкретного типа
данных, так и одного типа из списка обобщенных типов.
22
Андрианова А.А., Исмагилов Л.Н., Мухтарова Т.М.
• Для действительных чисел;
• Для комплексных чисел (комплексное число
хранится в структуре, содержащей реальную и мнимую
части).
1.4. Шаблоны функций
Шаблоны функций определяют обобщенное описание функций, т.е.
описание для обобщенного типа данных. При вызове шаблона функции
указывается конкретный тип данных (int, double или любой
пользовательский тип – структура или класс), который подставляется на
место обобщенного типа. Таким образом, компилятор генерирует
функцию для этого конкретного типа. Подставляя разные типы данных,
можно создать множество функций на основе шаблона, реализующих
единый алгоритм.
Шаблоны функций выполняют то же назначение, что и перегрузка
функций. Однако здесь имеются и существенные отличия. Во-первых,
при перегрузке функций их реализация может различаться, шаблон же
определяет единый алгоритм для любых типов данных. Во-вторых,
шаблоны определяют множество функций с одинаковым количеством
параметров, а при перегрузке функций количество параметров может
быть разным.
Шаблон функции определяется следующим образом:
template <список_обобщенных_типов>
тип_функции имя_функции(список_параметров)
{
. . .
}
список_обобщенных_типов :=
class T1 [,class T2, . . ., class TN], Ti –
произвольный идентификатор обобщенного типа;
тип_функции – тип возвращаемого значения, в качестве которого
может быть указан как конкретный тип данных, так и один из списка
обобщенных типов;
список_параметров – список формальных параметров шаблона
функции, которые могут быть описаны как с указанием конкретного типа
данных, так и одного типа из списка обобщенных типов.
22
Страницы
- « первая
- ‹ предыдущая
- …
- 20
- 21
- 22
- 23
- 24
- …
- следующая ›
- последняя »
