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


 

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

36407. Разработайте и поясните эквивалентную расчетную схему дискретной САУ 20.14 KB
  При разработке расчетной схемы будем использовать допущения: Операция квантования по уровню нелинейна = ЦСАУ нелинейна. Операция дискретизации сигнала линейна поэтому в дальнейшем нелинейные ЦСАУ заменим дискретными линейными САУ. В этой схему удобно объединить два блока работающих в непрерывном режиме Получена расчетная схема ЦСАУ эквивалентная по дискретной составляющей исходной САУ с цифровым регулятором. Эта схема позволяет ввести понятие переходной функции ЦСАУ в дискретном пространстве.
36408. Поясните понятие устойчивости дискретной САУ. Дайте классификацию методов определения устойчивости и поясните их 64.92 KB
  Дайте классификацию методов определения устойчивости и поясните их. единичная окружность zплоскости представляет собой границу устойчивости. Такое состояние называется апериодическая граница устойчивости.
36409. Выведите формулы спектра дискретного сигнала и проанализируйте его свойства 27.04 KB
  Спектральная плотность дискретного сигнала xTjω будем называть спектром дискретного сигнала. Спектр дискретного сигнала в отличие от аналогового периодичен по частоте с периодом fдискр. k=0123∞ Периодизация спектра обусловлена дискретизацией сигнала по времени.
36410. Приведите алгоритм дискретной обработки и получите передаточные функции и импульсную характеристику дискретной САУ 535.95 KB
  При построении дискретной САУ реализуется 2 подхода: Частота с которой ПК рассчитывает процессы так велика что интервал гораздо меньше всех постоянных времен НЧ. Если при этом и шаг квантования мал то САУ практически не отличается от непрерывной системы и если исполнительный механизм и объект меняются то и цифровая САУ меняется. В этом случае САУ нужно считать дискретными и процессы в них необходимо описывать с применением специального математического аппарата.
36411. Поясните способы определения выходного сигнала в дискретной САУ 148.07 KB
  1 способ: Перейти от к можно несколькими способами 2 способ: представить zпреобразование выходного сигнала: по таблице Анализ: 1 Первый способ более простой однако он обладает двумя недостатками: При делении полиномов получаются бесконечные ряды. Для получения приемлемого резта необходимо рассчитать большое количество членов ряда Если интеграл дискретизации выбран неверно то произойдет наложение спектральных составляющих которые существенно исказит выходной сигнал 2Преимущество второго способа состоит в том что сразу получается...
36412. Системы подчиненного регулирования параметров электропривода 25.03 KB
  Системы подчиненного регулирования параметров электропривода. ‘ возможность ограничить любой параметр на любом уровне Система с последовательной коррекцией или система подчиненного регулирования СПР удобны в расчетах и в настройках характерным является то что даже при существующих ошибках в определении параметров объекта системы остаются работоспособными и обладают запасом устойчивости и точности. Каждому регулируемому параметру соответствует свой датчик регулятор и контур регулирования. Контура регулирования вложены друг в друга...
36413. Приведите нелинейные модели САУ 16.25 KB
  Каждая СУ состоит их линейных и НЛЗ. Наличие одного НЛЗ делает всю САУ нелинейной. По матму описанию процессов НЛЗ делятся на статиче и динамиче. Описывся алгебраичми зависимочтями выхй величины от вхй Динамиче НЛЗ процессы котх описся НЛ ДУ например: Принципы нелинейности: а коэфты уря зависят от перх б степень произвх выше 1 и самой произвой в коэфт К зависит от самой производной ДУ будет НЛ если присутт хотя бы один из признаков нелинейности.
36414. Способы определения параметров динамических моделей 21.97 KB
  В зависимости от вида переходной характеристики кривой разгона задаются чаще всего одним из трех видов передаточной функции объекта управления: в виде передаточной функции инерционного звена первого порядкагде K T и коэффициент усиления постоянная времени и запаздывание которые должны быть определены в окрестности номинального режима работы объекта.Для объекта управления без самовыравнивания передаточная функция имеет вид: Более точнее динамику объекта описывает модель второго порядка с запаздыванием Экспериментальные методы определения...
36415. Поясните методы анализа устойчивости равновесных режимов нелинейных САУ 16.92 KB
  методыне дают полн. Методы анализа динамики НС: 1.Точные методы исследия динамики: метод прова сост: фазовой плоскости; изоклин; метод припасовывания метод точечного преобразования 2.