Zum Inhalt springen

C++-Referenz/ Standardbibliothek/ Container-Klassen/ priority queue

Aus Wikibooks
Alte Seite

Die Arbeit am Buch »C++-Referenz« wurde vom Hauptautor eingestellt. Ein Lehrbuch zum Thema C++ ist unter »C++-Programmierung« zu finden. Eine sehr umfangreiche und gute Referenz gibt es unter cppreference.com.

Diese Seite beschreibt C++98, einen stark veralteten Standard. Aktuelle Referenz.

// Header: queue
template <typename T, typename Container = vector<T>, typename Compare = less<Container::value_type> >
class priority_queue{
public:
    typedef typename Container::value_type value_type;
    typedef typename Container::size_type  size_type;
    typedef typename Container             container_type;

protected:
    Container c;
    Compare comp;

public:
    explicit priority_queue(Compare const& x = Compare(), Container const& = Container());

    template <typename InputIterator> priority_queue(
        InputIterator first,
        InputIterator last,
        Compare const& x = Compare(),
        Container const& = Container()
    );

    bool      empty()const { return c.empty(); }
    size_type size()const  { return c.size(); }

    value_type const& top()const { return c.front(); }

    void push(value_type const& x);
    void pop();
};