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] ) { /* ... */ }


 

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

26268. Контроль сорной растительности в агроценозах 233.5 KB
  Рассматриваются наиболее типичные условия засоренности агроценозов экономические пороги вредоностности сорняков предупредительные и истребительные методы контроля сорняков в том числе агротехнические биологические и химические. Контроль сорной растительности в агроценозах Среди всех агрономических проблем одна из самых сложных контроль сорняков причем при снижении интенсивности обработки почвы она обостряется. Методы контроля сорняков подразделяются на предупредительные и истребительные. Предупредительные методы контроля сорняков Они...
26269. Регулирование минерального питания растений в процессе вегетации 109 KB
  Цель тканевой диагностики выявление необходимости ранней азотной подкормки. Азотные подкормки проводят при показаниях прибора ОАП1 от 1 до 4 баллов или при бледнорозовой окраске индикаторной бумаги. При 41 55 балла применение поздней азотной некорневой подкормки улучшает качество зерна. Необходимость подкормки для улучшения качества зерна определяют по количеству общего азота в листьях пшеницы в фазы колошения цветения.
26270. Особенности почвенно-ландшафтного картографирования и формирования агроГИС для проектирования агротехнологий 72.5 KB
  Сформировать представление о почвенноландшафтном картографировании земель и умение пользоваться агроГИС для проектирования агротехнологий. Ключевые слова: агропроизводственные группировки почв; почвенноландшафтные карты АгроГИС электронные картслои лцифровка GPS Геоморфологическая карта карта СПП карта видов земель базы данных. Разработать карту агроэкологических видов земель в агроГИС на основе материалов почвенноландшафтного картографирования и набора тиматических электронных карт земельного массива фонды кафедры почвоведения...
26271. Абиотические и биотические факторы стресса, влияющие на продуктивность растений 602 KB
  Лекция: Абиотические и биотические факторы стресса влияющие на продуктивность растений Цели и задачи. Технологические повреждения растений. Под стрессом понимают нагрузку на организм которая вызывает сначала дестабилизацию потом нормализацию и повышение устойчивости а при превышении приспособляемости адаптируемости и способности соответствующих механизмов к компенсации отрицательного влияния отмирание целых растений или их частей. С одной стороны стресс мешает максимальной реализации генетического потенциала культурных растений но с...
26272. Применение сенсорной техники при дифференцированном внесении гербицидов (сенсоры сорняков) 120 KB
  Если имеется гетерогенное распределение сорняков при периодической борьбе с сорняками дифференциация расхода гербицида приносит экономические преимущества экономия производственных средств. Внесение гербицидов по потребности требует при дозировке ориентироваться на наличие сорняков. Это предполагает мелкоплощадное установление наличия сорняков.
26273. Точное земледелие 418 KB
  GPSприёмник и бортовой компьютер с программным обеспечением. Например с помощью мобильного радиоуправляемого самолета смонтированных на нем GPSприемника и видеокамеры можно получить информацию о распределении сорняков в пределах заданного поля. Наличие же GPSприемников совершенно необходимо для рассмотренного выше режима offline . Этапы 12 выполняются по стандартным методикам с использованием мобильного GPSнавигатора.
26274. Урожайность яровой пшеницы (т/га) на выщелоченных черноземах в производственных опытах СибНИИЗХим, Новосибирская область 263.5 KB
  Порядок формирования технологий возделывания сельскохозяйственных культур, их региональные и федеральные регистры. Наборы технологий разрабатывают применительно к различным агроэкологическим группам земель, для разных уровней интенсификации производства и категорий товаропроизводителей на основе нормативов.
26275. Архивное законодательство в 2000-е гг 56 KB
  Последнему непосредственно подчинены 15 федеральных государственных архивов Архивы в системе архивной службы РФ Федеральному архивному агентству непосредственно подчиняются 15 федеральных государственных архивов Всероссийский научноисследовательский институт документоведения и архивного дела ВНИИДАД и 1 обслуживающая организация.2004 Положение о ФАА положение регламентирует отношения сроки сферу использования сеть архивов обязанности сторон отраслевые фонды имеющие право постоянного хранения документов. принимает решение о выдаче...
26276. Организация комплектования Архивного Фонда Российской Федерации и других архивных документов 21.85 KB
  Целью комплектования является наиболее полная концентрация в архиве профильных ему документов. Мероприятия входящие в понятие комплектования: Определение состава источников; ЭЦД и НТО; Прием документов в государственные муниципальные архивы. Понятие источник комплектования появилось в 1940ые годы это учреждения или лица непосредственно передающие документы в государственные или ведомственные архивы.