Новые книги

Salix, первоначально носивший имя Salix OS (официальный сайт проекта) представляет собой один из дистрибутивов Linux, основанных на Slackware, старейшей из ныне живущих Linux-систем. От прародительницы он унаследовал простоту устройства и здоровый консерватизм, привнеся, однако, некоторые черты, свойственные так называемым «дружелюбным» (user friendly) дистрибутивам. Впрочем, как читатель увидит в дальнейшем, его «дружелюбие» никогда не становится навязчивым.
Windows XP – это одна из самых популярных операционных систем. Дома, на работе, в Интернет-кафе вы не сможете работать на компьютере, не умея работать с этой операционной системой.

С помощью этой книги вы быстро освоите все необходимые навыки для работы с Windows XP. Прочитав ее, вы узнаете, как установить, настроить и управлять этой операционной системой.

Шаблоны в языке C++



5.3.6. Шаблоны в языке C++

В языке C++ возможно и параметрическое программирование (программирование с использованием родовых компонентов). Родовые (параметризованные) компоненты обладают свойством адаптивности к конкретной ситуации, в которой такой компонент используется, что позволяет разрабатывать достаточно универсальные и в то же время высокоэффективные компоненты программ (в частности, объекты).

Параметрическое программирование в языке C++ реализовано с помощью шаблонов (template). В C++ определено два вида шаблонов: шаблоны-классы и шаблоны-функции.

Шаблоны-классы могут использоваться многими способами, но наиболее очевидным является их использование в качестве адаптивных объектов памяти. Шаблоны-функции могут использоваться для определения параметризованных алгоритмов. Основное отличие шаблона-функции от шаблона-класса в том, что не нужно сообщать компилятору, к каким типам параметров применяется функция, он сам может определить это по типам ее формальных параметров.

Возможность параметрического программирования на языке C++ обеспечивается стандартной библиотекой шаблонов STL (Standard Template Library). Она включена в последнюю предварительную версию Стандарта языка C++. Библиотека подробно описана в книге D.R.Musser, A.Saini "STL Tutorial and Reference Guide. C++ Programming with the Standard Template Library" Addison-Wesley, 1996 (книга доступна также по http://www.aw.com/cp/musser-saini.html). Документация по текущей версии STL доступна по http://weber.u.washington.edu/~bytewave/bytewave_stl.html или http://www.ualberta.ca/~nyu/stl/stl.html. Наконец, реализация текущей версии STL доступна по ftp://ftp.cs.rpi.edu/pub/stl.

Назад | Содержание | Вперед