20519

Шаблони функцій (передача типу в функцію у вигляді параметру). Перевизначення шаблонів функцій. Передача у шаблони додаткових аргументів

Доклад

Информатика, кибернетика и программирование

Шаблони механізм C який дозволяє створювати узагальнені функції і класи які працюють з типами даних які передаються в параметрі. Можна наприклад створити функцію яка сортує масив цілих чисел а можна створити шаблон функції який буде сортувати масиви будьяких даних над якими задані операції порівняння і присвоєння. Шаблон функції виглядає так: template class Ідентифікатор_типу Тип_результату Назва_функціїСписок_параметрів { Тіло функції } Параметр Ідентифікатор_типу задає тип з яким працює функція. Всюди в тілі і заголовку...

Украинкский

2013-07-25

27.5 KB

0 чел.

Шаблони функцій (передача типу в функцію у вигляді параметру). Перевизначення шаблонів функцій. Передача у шаблони додаткових аргументів.

Шаблони - механізм C++, який дозволяє створювати узагальнені функції і класи, які працюють з типами даних які передаються в параметрі. Можна наприклад створити функцію яка сортує масив цілих чисел, а можна створити шаблон функції, який буде сортувати масиви будь-яких даних, над якими задані операції порівняння і присвоєння. Таким чином одну і ту ж функцію сортування можна застосовувати для масивів різних даних, не створюючи окрему функцію для кожного окремого типу.

Шаблон функції виглядає так:

template <class Ідентифікатор_типу> Тип_результату Назва_функції(Список_параметрів)

{

   // Тіло функції

}

Параметр "Ідентифікатор_типу" задає тип з яким працює функція. Всюди в тілі і заголовку функції компілятор замість цього ідентифікатора підставить фактичний тип, який передається. Наприклад функція перестановки двох змінних:

template <class Type> void swap(Type &a, Type &b)

{

     Type tmp=a;a=b;b=tmp;

}

За допомогою шаблонів можна дублювати  та розмножувати текст програми. Програмуючи на С + +, ви могли б скористатися засобами перевизначення і дати обом функцій одне і теж ім'я. Перевизначення робить текст програми більш наочним, але не позбавляє нас від необхідності повторювати один і той же алгоритм в декількох місцях.

При виклику шаблону функції типи і значення його аргументів визначаються шляхом дослідження типів фактичних аргументів функції. Цей процес називається висновком аргументів шаблону.
Параметром функції в шаблоні min () є посилання на масив елементів типу Type

template <class Type, int size>

  Type min( Type (&r_array)[size] ) { /* ... */ }


 

А также другие работы, которые могут Вас заинтересовать

49399. Устройство сбора телеметрической информации. Оценка измеряемой величины с порогом 239.5 KB
  Микро ЭВМ цифровая ЭВМ с интерфейсом ввода вывода состоящая из МП памяти и при необходимости пульта управления и источников питания объединенных в единой несущей конструкции. ША предназначена для передачи адресов от МП к блоку памяти и внешних устройств. Программа обработки с распределением команд по ячейкам памяти. Адрес памяти Метка Команда мнемоника код Число тактов Время выполнения Комментарий 8000h LXI D 8037h 10 10 Запись адреса ячейки памяти предназначенную для данных с датчиков в регистр D 80030h M0 MVI B Fh 06 7 35 Записываем...
49400. Проектирования газотурбинного двигателя мощностью 16 МВт для привода нагнетателя природного газа, на базе конвертированного авиационного двигателя НК-16-СТ 955.65 KB
  Кратко даны обоснование и описание конструкции газотурбинного привода, технология эксплуатации, рассмотрены вопросы безопасности и экологичности проекта, стандартизации и метрологии, определена экономическая эффективность инвестиций замены ГТД. В качестве иллюстрации полученных результатов выполнен ряд графических работ.
49401. Расчет одномерных систем автоматического управления 1.09 MB
  Такие системы управления называются следящими. Самонастройка системы на оптимум какоголибо из показателей объекта или системы. Это может быть обеспечение и экстремального значения управляемой величины и максимального быстродействия системы управления путем подстройки её параметров и режима работы объекта оптимального в определенном заданном смысле. Системы управления разделяются на разомкнутые и замкнутые.
49402. Устройство сбора телеметрической информации c оценкой измеряемой величины 247 KB
  Конструктивная реализация устройства включает в себя ряд коммутаторов с подключенными к ним дешифраторами аналоговоцифровой преобразователь АЦП и микропроцессорный блок включающий в себя сам микропроцессор тактовый генератор и память ПЗУ и ОЗУ. Описание работы схемы Чтобы считать с определенного датчика сигнал необходимо выбрать коммутатор его канал и запустить АЦП. Из ША разряды А1 А2 А3 и А4 поступают на коммутаторы К1К63 которые снимают показания датчиков затем сигнал поступает на коммутаторы К64К67 которые выбирают какой из...
49403. Устройство селекции ВИК 170 KB
  В работе выполнена разработка структурной схемы алгоритма работы устройства программного обеспечения а также приведен расчет требуемой памяти. Задачи решаемые современными устройствами постоянно усложняются. Перспективными представляются селектирующие устройства на микропроцессорах. Преимуществами таких устройств является возможность накопления информации от различных источников в регистрах общего назначения РОНАХ и их анализа согласно выбранным критериям осуществление оперативной настройки на различные коды без существенного...
49404. Разработка тренинга командообразования 564.65 KB
  Осуществить теоретический анализ понятий команда, командообразование; рассмотреть основные сферы деятельности команд; определить принципы организации командной формы работы; рассмотреть основные технологии психологического тренинга; выделить основные виды, парадигмы тренинга