4971

Шаблон и шаблонный класс

Контрольная

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

Шаблон При решении практических задач возникает необходимость создания семейства классов для формирования для описания похожих объектов. Формирование семейства классов целесообразно при описании структур данных, например, массивов указателей, списко...

Русский

2012-11-30

43.86 KB

15 чел.

Шаблон

При решении практических задач возникает необходимость создания семейства классов для формирования для описания похожих объектов.

Формирование семейства классов целесообразно при описании структур данных, например, массивов указателей, списков, деревьев и т.д.

Для формирования семейств классов используются шаблонные классы.

Шаблонный класс (шаблон) – это параметризированный класс. В качестве параметров параметризированного класса указываются типы данных и константы.

С помощью шаблонных классов можно создавать обобщенные структуры данных: массив указателей, список, очередь и т.д. Тип и количество объектов для конкретного класса можно задавать с помощью параметрами.

Например, можно разработать шаблонный класс массив указателей. В качестве параметров такого шаблонного класса следует использовать тип объектов, входящих в данную структуру данных и их количество.

Описание шаблонного класса

Для описания шаблонного класса используется ключевое слово template.

Формат описания шаблонного класса следующий

template <class T, int N>

class Massiv

{

Massive();

~Massive();

};

Т является обозначением передаваемого в шаблон класса (типа данных). Служебное слово класс является признаком того, передаваемый в класс параметр- тип данных.

Обозначение конкретного типа данных слева от передаваемого параметра означает, что данных параметр является константой.

Например, шаблонный класс Massiv предназначен для организации классов массивов из элементов данных типа Т с количеством элементов N.

Для организации класса массивов, состоящих из фиксированного количества элементов конкретного типа целесообразно использовать операцию typedef.

Например, для описания класса массива целых чисел из 20 элементов следует использовать команду

typedef Massive<int,20> MassiveInt20;

Далее можно определять конкретный массив

MassiveInt20 M1;

Возможен вариант определения массива непосредственно на основе шаблона

Massive<int,20> M2;

Полное определение функций шаблона должно выглядеть следующим образом

template <class T, int N>

Massive<T,N>::Massive()

{

}

Определение шаблона и описание функций должны находиться в одном файле.

Сравнительный анализ класса и шаблона

Класс

Шаблон

Служит для описания однородных объектов

Служит для описания семейства классов

Описывается в виде двух файлов

Описывается в виде одного файла

Далее приведен пример класса список


 

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

47806. Українська мова. Тексти лекцій 2.87 MB
  У них систематизовано наукові знання про мову професійного спілкування; норми літературної мови; стилістичну систему сучасної української літературної мови; види типи і форми фахового спілкування; види публічного мовлення як важливого способу комунікації; вимоги до складання текстів документів; науковий стиль і його засоби у професійній діяльності; проблеми перекладу й редагування наукових текстів тощо. ЗАКОНОДАВЧІ ТА НОРМАТИВНОСТИЛЬОВІ ОСНОВИ ПРОФЕСІЙНОГО СПІЛКУВАННЯ Лекція 1. Державна мова мова професійного спілкування План Мета...
47807. История и методология Наук о Земле как самостоятельная дисциплина 1.17 MB
  Место геологии и географии в системе естественных наук. Донаучный этап развития геологии и географии 4. Научный этап развития геологии и географии 7. Становление научных основ в геологии и географии первая половина XIX в.
47808. Информационные технологии в юридической деятельности 15.9 MB
  Основы защиты информации: Учебное пособие. Правовое обеспечение процессов информатизации представляет совокупность нормативных актов принимаемых на различных уровнях власти и управления регулирующих комплекс общественных отношений связанных с созданием и использованием информации и перспективных ИТ. Основные понятия Понятия информации в современной науке и технике Функционирование любой системы управления в технике природе обществе в первую очередь основано на сборе обработке и анализе информации поступающей из окружающей среды...
47809. ОБЩЕЕ УЧЕНИЕ О БОЛЕЗНИ ПАТОГЕНЕЗ 1.56 MB
  Главный критерий болезни нарушение трудоспособности. Болезнь нарушение жизнедеятельности организма вызванное действием чрезвычайных раздражителей характеризуются снижением работоспособности приспособляемости организма к условиям окружающей cреды и одновременным развитием не только патологических но и компенсаторноприспособительских реакций направленных на восстановление нарушенных функций и структур лежащих в основе выздоровления. психический психогенный нормальная или измененная нарушение ВНД сопровожд. Направлены...
47810. Краткий курс лекций по патологической физиологии 1.34 MB
  Патофизиология массы крови. Курс состоит из 33х лекций в которых разбираются вопросы общей патологии этиология патогенез общий адаптационный синдром иммунитет и аллергия воспаление лихорадка и гипертермия и лекций посвященных частной патофизиологии отдельных систем организма крови дыхания кровообращения печени почек пищеварения нервной и эндокринной. Хотя нужно отметить что основная масса показателей может колебаться в определенной степени например температура тела биохимический или клеточный состав крови. Возникает...
47811. Безопасность жизнедеятельности. Курс лекций 1.74 MB
  Основы физиологии труда. Вредные условия труда. Основные принципы государственной политики в ОТ охране труда. Законодательная база охраны труда в Российской Федерации.
47812. ЭКОНОМИЧЕСКАЯ ТЕОРИЯ 2.03 MB
  Потребности как предпосылка производства. Ресурсы и факторы производства Продукт как результат производства фирмы.3 Издержки производства: явные и неявные внешние и внутренние постоянные и переменные
47813. Сборник клинических задач. Лечебное дело 740 KB
  При осмотре влагалищными зеркалами: слизистая оболочка влагалища и шейки матки синюшная. Устанавливается на основании сомнительных и вероятных признаков беременности: отвращение к запахам тошнота отсутствие менструации синюшность слизистой оболочки влагалища и шейки матки увеличение тела матки. Дополнительные методы диагностики беременности: определение ХГЧ гормона хорионического гонодотропина в сыворотке крови и моче; ультразвуковое исследование матки. по величине тела матки 8 недель небеременная матка имеет размер с крупную...