priority_queue (STL/CLR)
Класс-шаблон описание объекта, что элементы управления менять-длина приказали последовательность элементов, имеет ограниченный доступ.Адаптер контейнера priority_queue используется для управления основной контейнер, как очередь с приоритетами.
В приведенном ниже описании GValue так же, как и Value если последний не будет типа ref. в этом случае это Value^.Аналогично, GContainer так же, как и Container если последний не будет типа ref. в этом случае это Container^.
template<typename Value,
typename Container>
ref class priority_queue
System::ICloneable,
Microsoft::VisualC::StlClr::IPriorityQueue<GValue, GContainer>
{ ..... };
Параметры
Значение
Тип элемента в управляемой последовательности.Контейнер
Тип базового контейнера.
Члены
Определение типа |
Описание |
---|---|
Тип постоянной ссылки на элемент. |
|
Тип базового контейнера. |
|
Тип подписанного диапазона от 2 элементами. |
|
Тип универсального интерфейса для адаптера контейнера. |
|
Тип элемента для универсального интерфейса для адаптера контейнера. |
|
Тип ссылки к элементу. |
|
Тип подписанного диапазона от 2 элементами. |
|
Делегат упорядочения для 2 элементов. |
|
Тип элемента. |
Функция-член |
Описание |
---|---|
Заменяет все элементы. |
|
Проверяет, не присутствуют ли элементы. |
|
Осуществляет доступ к базовому контейнеру. |
|
Удаляет элемент hghest-приоритета. |
|
Создает объект контейнера. |
|
Добавляет новый элемент. |
|
Подсчитывает количество элементов. |
|
Осуществляет доступ к элементу с наивысшим приоритетом. |
|
Копирует управляемую последовательность, в новый массив. |
|
Копирует делегат упорядочения для двух элементов. |
Свойство. |
Описание |
---|---|
Осуществляет доступ к элементу с наивысшим приоритетом. |
Оператор |
Описание |
---|---|
Заменяет управляемую последовательность. |
Интерфейсы
Интерфейс |
Описание |
---|---|
Повторяющиеся объект. |
|
IPriorityQueue<Значение контейнер> |
Служба универсальный шаблон адаптер контейнера. |
Заметки
Объект выборки и хранилище свободенов для последовательности она контролирует через базовый контейнер, типа Container, в котором хранятся элементы Value и увеличивается по запросу.Он содержит последовательность упорядоченные в виде кучи, с элементом с наивысшим приоритетом (верхним элементом), легко доступны и съемным.Объект ограничивает доступ к отправлять новые элементы и извлечь только элемент с наивысшим приоритетом, при реализации с приоритетами очередь.
Объект упорядочивает последовательность он контролирует путем вызова делегата сохраненный объект типа priority_queue::value_compare (STL/CLR).Можно указать сохраненные объект делегата при построении priority_queue; если не указан ни один объект делегата, то значением по умолчанию является сравнение operator<(value_type, value_type).Доступ к этому, сохраненный объект, вызвав функцию-член priority_queue::value_comp (STL/CLR)().
Такой объект делегата должен установить строгий порядок слабых на значениях типа priority_queue::value_type (STL/CLR).Это означает для всех 2 клавиш X и Y:
value_comp()(X, Y) возвращает один и тот же логический результат при каждом вызове.
Если value_comp()(X, Y) значение равно true, то value_comp()(Y, X) должен иметь значение false.
Если value_comp()(X, Y) значение равно true, то говорят, что ordered X перед Y.
Если !value_comp()(X, Y) && !value_comp()(Y, X) значение равно true, то говорят, что имеют X и Y эквивалентный упорядочение.
Для любого элемента X, который предшествует Y в управляемой последовательности, key_comp()(Y, X) false.(По умолчанию для объекта делегата, клавиш никогда не снижают в значении).
Элемент наивысшего приоритета таким образом один из элементов, не ordered перед любым другим элементом.
Поскольку основной контейнер содержит элементы, упорядоченные в виде кучи.
Контейнер должен поддерживать произвольно-доступные итераторы.
Элементы с порядком числа могут быть извлечены в другом порядке, чем они передаются.(Порядок не стабилизирован).
Таким образом, выбранные для базового контейнера, включают deque (STL/CLR) и vector (STL/CLR).
Требования
заголовок: <очередь cliext/>
Cliext пространство имен: