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


 

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

76478. Раздел общего имущества супругов: Соглашение о разделе имущества супругов 17.81 KB
  256 ГК РФ имущество нажитое во время брака супругами является их совместной собственностью а имущество которое принадлежало супругам до брака является имуществом каждого из супругов и разделу не подлежит за исключением случаев когда имущество одного из супругов признано судом общим имуществом супругов. 38 СК РФ устанавливает что общее имущество супругов может быть разделено как в течение брака так и после расторжения брака по требованию любого из супругов. Также общее имущество супругов может быть разделено по требованию кредиторов...
76479. Определение долей супругов при разделе имущества в судебном порядке 15.66 KB
  В соответствие с этим совершенно логично звучит принцип равенства долей супругов при разделе общего имущества закрепленный в п. Если договором между супругами не установлено иное то по закону по умолчанию каждый из супругов является собственником доли общего имущества в размере 1 2 части. Как уже упоминалось выше тот факт что один из супругов по уважительной причине не имел источника постоянного дохода или по совместному согласию занимался домашним хозяйством и воспитанием детей не дает никаких оснований уменьшать долю при разделе...
76480. Вопросы, разрешаемые судом при расторжении брака. Момент прекращения брака при разводе 16.15 KB
  24 СК РФ разрешить и другие вопросы: а с кем из родителей будут проживать несовершеннолетние дети после развода; б о взыскании с родителей средств на содержание детей; в о взыскании средств на содержание нетрудоспособного нуждающегося супруга; г о разделе имущества находящегося в общей совместной собственности супругов. Не вызывает сомнения что все перечисленные вопросы являются весьма важными для разводящихся супругов. 24 СК РФ требования об учете интересов детей и каждого из супругов например размер алиментов на несовершеннолетних...
76481. Брачный договор: понятие, форма, стороны 15.48 KB
  Брачный договор соглашение лиц вступающих в брак или соглашение супругов определяющее имущественные права и обязанности супругов в браке и или в случае его расторжения ст. По правовой природе брачный договор гражданскоправовой договор имеет особенности касающиеся субъектного состава предмета времени заключения и содержания договора; к нему могут применяться общие положения ГК о договорах; изменение расторжение и признание брачного договора недействительным происходят по основаниям и в порядке установленными нормами...
76482. Содержание брачного договора 15.8 KB
  Так брачным договором супруги вправе изменить установленный законом режим совместной собственности установить режим совместной долевой или раздельной собственности на все имущество супругов на его отдельные виды или на имущество каждого из супругов. Брачный договор может быть заключен как в отношении имеющегося так и в отношении будущего имущества супругов. Так условия брачного договора могут содержать: права и обязанности по взаимному содержанию; способы участия в доходах друг друга; порядок несения каждым из них семейных расходов;...
76483. Прекращение и изменение брачного договора 15.33 KB
  Соглашение об изменении или о расторжении брачного договора совершается в той же форме что и сам брачный договор т. Односторонний отказ от исполнения брачного договора не допускается. Может возникнуть ситуация когда супруги не пришли к обоюдному соглашению о расторжении брачного договора.
76484. Признание брачного договора недействительным 18.76 KB
  Брачный договор может быть признан судом недействительным в случае: признания брака недействительным; если условия договора ставят одного из супругов в крайне неблагоприятное положение; по основаниям предусмотренным ст. На признание брачного договора действительным или недействительным распространяются соответствующие нормы ГК РФ о действительности и недействительности сделок. Брачный договор может быть признан недействительным по иску супруга чьи права и законные интересы были нарушены в результате заключения договора: в состоянии...
76485. Обращение взыскание на имущество супругов. Гарантии прав кредиторов при заключении брачного договора 18.08 KB
  Таким имуществом в частности являются движимые и недвижимые вещи ценные бумаги паи доли в капитале внесенные в кредитные или иные коммерческие организации и любое другое нажитое в период брака имущество независимо от того на имя кого из супругов оно приобретено. 256 ГК РФ по обязательствам одного из супругов взыскание может быть обращено на его долю в общем имуществе супругов которая причиталась бы этому супругу при разделе имущества. 39 СК РФ доли супругов при разделе общего имущества признаются равными если иное не предусмотрено...
76486. Основания, порождающие родительские правоотношения 15.58 KB
  Законом предусмотрена государственная регистрация рождения ребенка в органах записи актов гражданского состояния по месту рождения ребенка или по месту жительства его родителей одного из них. Происхождение ребенка от матери устанавливается не медицинским учреждением а органом записи актов гражданского состояния на основании справки или иного документа выдаваемого тем медицинским учреждением в стенах которого родился ребенок. Государственная регистрация рождения ребенка производится по месту жительства родителей или одного из них. Сведения...