4971

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

Контрольная

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

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

Русский

2012-11-30

43.86 KB

14 чел.

Шаблон

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

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

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

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

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

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

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

Для описания шаблонного класса используется ключевое слово 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()

{

}

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

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

Класс

Шаблон

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

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

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

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

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


 

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

11241. Основные средства предприятия 128.5 KB
  3. Основные средства предприятия 3.1 Экономическая сущность состав и структура основных средств предприятия 3.2 Виды оценок основных фондов 3.3 Износ и амортизация основных средств 3.4 Показатели и пути улучшения использования основных средств предприятия 3.1 Эк...
11242. Оборотные средства. Состав, структура и стадии оборачиваемости ОС 82 KB
  4. Оборотные средства 4.1. Состав структура и стадии оборачиваемости оборотных средств. 4.2. Нормирование оборотных средств. 4.3. Показатели и пути улучшения использования оборотных средств. 4.1 Состав структура и стадии оборачиваемости ОС Наряду с основными фондами
11243. Трудовые ресурсы предприятия 85.5 KB
  5. Трудовые ресурсы предприятия Основы управления персоналом. Классификация персонала предприятия определение численности работающих. Производительность труда: значение показатели и резервы роста. Системы и формы оплаты труда. 5.1...
11244. Себестоимость продукции. Понятие и классификация издержек предприятия 76 KB
  6. Себестоимость продукции Понятие и классификация издержек предприятия. Понятие и порядок калькуляции себестоимости продукции. Составление сметы затрат на производство. Пути снижения себестоимости продукции. 6.1 Понятие и классифи...
11245. Прибыль и рентабельность. Прибыль и рентабельность предприятия 53.5 KB
  7. Прибыль и рентабельность Прибыль и рентабельность предприятия. Образование распределение и использование прибыли на предприятии. 7.1 Прибыль и рентабельность предприятия. Прибыль характеризует экономический эффект деятельности п
11246. Цены: понятие, состав, виды, порядок формирования 79 KB
  8. Цены: понятие состав виды порядок формирования Одним из важнейших рычагов управления является цена которая оказывает непосредственное воздействие на производство распределение обмен и потребление. Цена – это денежное выражение стоимости; экономическая кат
11247. Инвестиционная деятельность предприятия 75 KB
  9. Инвестиционная деятельность предприятия Инвестиционная деятельность предприятия: понятие виды источники финансирования. Оценка эффективности инвестиционных проектов. 9.1 Инвестиционная деятельность предприятия: понятие виды исто
11248. Собственность и экономические интересы. Трансформация собственности 113.5 KB
  Оно заключается в том, что в основе собственности лежат общественные отношения. (Робинзону не необитаемом острове даже мысль не приходит в голову о понятии собственность. Роль и место собственности в системе общественных отношений дает о ней наиболее полное представление.
11249. Экономическое устройство России на рубеже XX – XXI вв. Стратегии развития 131 KB
  Тема 2. Экономическое устройство России на рубеже XX – XXI вв. Стратегии развития Теперь мы обратимся к анализу светской экономики. Эта тема представляет большой интерес для экономической науки поскольку Советский Союз послужил лабораторией для проверки теорий