(C++17) | ||||
Sequence | ||||
(C++11) | ||||
(C++26) | ||||
(C++26) | ||||
(C++11) | ||||
Associative | ||||
Unordered associative | ||||
(C++11) | ||||
(C++11) | ||||
(C++11) | ||||
(C++11) | ||||
Adaptors | ||||
(C++23) | ||||
(C++23) | ||||
(C++23) | ||||
(C++23) | ||||
Views | ||||
(C++20) | ||||
(C++23) | ||||
Tables | ||||
Iterator invalidation | ||||
Member function table | ||||
Non-member function table |
std::priority_queue
Member functions | ||||
Element access | ||||
priority_queue::top | ||||
Capacity | ||||
Modifiers | ||||
(C++23) | ||||
(C++11) | ||||
(C++11) | ||||
Non-member functions | ||||
(C++11) | ||||
Helper classes | ||||
Deduction guides(C++17) |
const_reference top()const; | ||
Returns reference to the top element in the priority queue. This element will be removed on a call topop(). If default comparison function is used, the returned element is also the greatest among the elements in the queue.
Contents |
Reference to the top element as if obtained by a call toc.front().
Constant.
#include <iostream>#include <queue> struct Event{int priority{};char data{' '}; friendbool operator<(Eventconst& lhs, Eventconst& rhs){return lhs.priority< rhs.priority;} friendstd::ostream& operator<<(std::ostream& os, Eventconst& e){return os<<'{'<< e.priority<<", '"<< e.data<<"'}";}}; int main(){std::priority_queue<Event> events; std::cout<<"Fill the events queue:\t"; for(autoconst e:{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'}
removes the top element (public member function)[edit] |