std::priority_queue<T,Container,Compare>::pop - cppreference.com

From cppreference.com

voidpop();Removes the top element from the priority queue. Effectively calls std::pop_heap(c.begin(),c.end(),comp);c.pop_back();.

Complexity

Logarithmic number of comparisons plus the complexity of Container::pop_back.

Example

Run this code

#include<iostream>#include<queue>structEvent{intpriority{};chardata{' '};friendbooloperator<(Eventconst&lhs,Eventconst&rhs){returnlhs.priority<rhs.priority;}friendstd::ostream&operator<<(std::ostream&os,Eventconst&e){returnos<<'{'<<e.priority<<", '"<<e.data<<"'}";}};intmain(){std::priority_queue<Event>events;std::cout<<"Fill the events queue:\t";for(autoconste:{Event{6,'L'},{8,'I'},{9,'S'},{1,'T'},{5,'E'},{3,'N'}}){std::cout<<e<<' ';events.push(e);}std::cout<<"\nProcess events:\t\t";for(;!events.empty();events.pop()){Eventconst&e=events.top();std::cout<<e<<' ';}std::cout<<'\n';}Output:

Fill the events queue: {6, 'L'} {8, 'I'} {9, 'S'} {1, 'T'} {5, 'E'} {3, 'N'} Process events: {9, 'S'} {8, 'I'} {6, 'L'} {5, 'E'} {3, 'N'} {1, 'T'} See also

(C++11)

constructs element in-place and sorts the underlying container
(public member function)

[edit]

inserts element and sorts the underlying container
(public member function)

[edit]

accesses the top element
(public member function)

[edit]