Namespaces
Variants

std::priority_queue<T,Container,Compare>:: top

From cppreference.net
const_reference top ( ) const ;

Gibt eine Referenz auf das oberste Element in der Prioritätswarteschlange zurück. Dieses Element wird bei einem Aufruf von pop() entfernt. Wenn die Standardvergleichsfunktion verwendet wird, ist das zurückgegebene Element auch das größte unter den Elementen in der Warteschlange.

Inhaltsverzeichnis

Rückgabewert

Verweis auf das oberste Element, als wäre es durch einen Aufruf von c. front ( ) erhalten worden.

Komplexität

Konstante.

Beispiel

#include <iostream>
#include <queue>
struct Event
{
    int priority{};
    char data{' '};
    friend bool operator<(Event const& lhs, Event const& rhs)
    {
        return lhs.priority < rhs.priority;
    }
    friend std::ostream& operator<<(std::ostream& os, Event const& e)
    {
        return os << '{' << e.priority << ", '" << e.data << "'}";
    }
};
int main()
{
    std::priority_queue<Event> events;
    std::cout << "Fill the events queue:\t";
    for (auto const 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())
    {
        Event const& e = events.top();
        std::cout << e << ' ';
    }
    std::cout << '\n';
}

Ausgabe:

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'}

Siehe auch

entfernt das oberste Element
(öffentliche Elementfunktion)