Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Основные свойства шаблонов классов.
· Компонентные функции параметризованного класса автоматически являются параметризованными. Их не обязательно объявлять как параметризованные с помощью template. · Дружественные функции, которые описываются в параметризованном классе, не являются автоматически параметризованными функциями, т.е. по умолчанию такие функции являются дружественными для всех классов, которые организуются по данному шаблону. · Если friend-функция содержит в своем описании параметр типа параметризованного класса, то для каждого созданного по данному шаблону класса имеется собственная friend-функция. · В рамках параметризованного класса нельзя определить friend-шаблоны (дружественные параметризованные классы). · С одной стороны, шаблоны могут быть производными (наследоваться) как от шаблонов, так и от обычных классов, с другой стороны, они могут использоваться в качестве базовых для других шаблонов или классов. · Шаблоны функций, которые являются членами классов, нельзя описывать как virtual. · Локальные классы не могут содержать шаблоны в качестве своих элементов. Реализация компонентной функции шаблона класса, которая находится вне определения шаблона класса, должна включать дополнительно следующие два элемента: · Определение должно начинаться с ключевого слова template, за которым следует такой же список_параметров_типов в угловых скобках, какой указан в определении шаблона класса. · За именем_класса, предшествующим операции области видимости (::), должен следовать список_имен_параметров шаблона. · template<список_типов> · тип_возвр_значения имя_класса<список_имен_параметров>::имя_функции(список_параметров)
Вопрос №21. Динамические структуры данных. Стек. Очередь. Двусторонняя очередь. Динамические структуры данных – это структуры данных, память под которые выделяется и освобождается по мере необходимости. Динамическая структура данных характеризуется тем что:
в процессе выполнения программы может меняться характер взаимосвязи между элементами структуры. Каждой динамической структуре данных сопоставляется статическая переменная типа указатель (ее значение – адрес этого объекта), посредством которой осуществляется доступ к динамической структуре. Сами динамические величины не требуют описания в программе, поскольку во время компиляции память под них не выделяется. Во время компиляции память выделяется только под статические величины. Указатели – это статические величины, поэтому они требуют описания. Необходимость в динамических структурах данных обычно возникает в следующих случаях.
Когда размер данных, обрабатываемых в программе, превышает объем сегмента данных. Для установления связи между элементами динамической структуры используются указатели, через которые устанавливаются явные связи между элементами. Такое представление данных в памяти называется связным. Достоинства связного представления данных – в возможности обеспечения значительной изменчивости структур:
Вместе с тем, связное представление не лишено и недостатков, основными из которых являются следующие:
Date: 2016-07-25; view: 473; Нарушение авторских прав |