Поделиться через


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>
    { ..... };

Параметры

  • Значение
    Тип элемента в управляемой последовательности.

  • Контейнер
    Тип базового контейнера.

Члены

Определение типа

Описание

priority_queue::const_reference (STL/CLR)

Тип постоянной ссылки на элемент.

priority_queue::container_type (STL/CLR)

Тип базового контейнера.

priority_queue::difference_type (STL/CLR)

Тип подписанного диапазона от 2 элементами.

priority_queue::generic_container (STL/CLR)

Тип универсального интерфейса для адаптера контейнера.

priority_queue::generic_value (STL/CLR)

Тип элемента для универсального интерфейса для адаптера контейнера.

priority_queue::reference (STL/CLR)

Тип ссылки к элементу.

priority_queue::size_type (STL/CLR)

Тип подписанного диапазона от 2 элементами.

priority_queue::value_compare (STL/CLR)

Делегат упорядочения для 2 элементов.

priority_queue::value_type (STL/CLR)

Тип элемента.

Функция-член

Описание

priority_queue::assign (STL/CLR)

Заменяет все элементы.

priority_queue::empty (STL/CLR)

Проверяет, не присутствуют ли элементы.

priority_queue::get_container (STL/CLR)

Осуществляет доступ к базовому контейнеру.

priority_queue::pop (STL/CLR)

Удаляет элемент hghest-приоритета.

priority_queue::priority_queue (STL/CLR)

Создает объект контейнера.

priority_queue::push (STL/CLR)

Добавляет новый элемент.

priority_queue::size (STL/CLR)

Подсчитывает количество элементов.

priority_queue::top (STL/CLR)

Осуществляет доступ к элементу с наивысшим приоритетом.

priority_queue::to_array (STL/CLR)

Копирует управляемую последовательность, в новый массив.

priority_queue::value_comp (STL/CLR)

Копирует делегат упорядочения для двух элементов.

Свойство.

Описание

priority_queue::top_item (STL/CLR)

Осуществляет доступ к элементу с наивысшим приоритетом.

Оператор

Описание

priority_queue::operator= (STL/CLR)

Заменяет управляемую последовательность.

Интерфейсы

Интерфейс

Описание

ICloneable

Повторяющиеся объект.

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 пространство имен:

См. также

Ссылки

deque (STL/CLR)

queue (STL/CLR)

stack (STL/CLR)

vector (STL/CLR)

Другие ресурсы

Ссылка библиотека STL/CLR