Шаг 347.
Библиотека STL.Специальные контейнеры. Приоритетные очереди. Строение класса priority_queue. Другие операции

    На этом шаге мы перечислим другие операции, используемые в классе priority_queue.

    При создании приоритетных очередей возможно также использовать следующие операции:

size_type приоритетная_очередь::size () const
Возвращает текущее количество элементов. Для проверки отсутствия элементов в приоритетной очереди рекомендуется использовать функцию empty(), поскольку она может работать быстрее.
bool приоритетная_очередь::empty () const
Проверяет, пуста ли приоритетная очередь. Эквивалент (но может работать быстрее):
приоритетная_очередь::size()==0
void приоритетная_очередь::push (const value_type& elem)
Вставляет копию elem в приоритетную очередь.
const value_type& приоритетная_очередь::top () const
Возвращает следующий элемент приоритетной очереди (то есть элемент с наибольшим значением среди всех элементов очереди). Если приоритетная очередь содержит сразу несколько элементов с таким значением, критерий выбора определяется реализацией.

Перед вызовом необходимо убедиться в том, что приоритетная очередь содержит хотя бы один элемент (size()>0), иначе вызов приводит к непредсказуемым последствиям.

void приоритетная_очередь::рор ()
Удаляет из приоритетной очереди следующий элемент (то есть элемент с наибольшим значением среди всех элементов очереди). Если приоритетная очередь содержит сразу несколько элементов с таким значением, критерий выбора определяется реализацией.

Функция не имеет возвращаемого значения. Чтобы обработать значение следующего элемента, следует предварительно вызвать функцию top().

Перед вызовом необходимо убедиться в том, что приоритетная очередь содержит хотя бы один элемент (size()>0), иначе вызов приводит к непредсказуемым последствиям.

    Со следующего шага мы начнем знакомиться с битовыми полями.




Предыдущий шаг Содержание Следующий шаг