Udostępnij za pośrednictwem


priority_queue (STL/CLR)

Klasa szablon opisuje obiekt, który kontroluje różne długości zamówione sekwencja elementów, który ma ograniczony dostęp.Użyj karty kontener priority_queue do zarządzania podstawowej kontener jako priorytet kolejki.

W polu Opis poniżej GValue jest taka sama jak Value o ile ten ostatni typ odwołania, w którym to przypadku jest Value^.Podobnie GContainer jest taka sama jak Container o ile ten ostatni typ odwołania, w którym to przypadku jest Container^.

template<typename Value,
    typename Container>
    ref class priority_queue
        System::ICloneable,
        Microsoft::VisualC::StlClr::IPriorityQueue<GValue, GContainer>
    { ..... };

Parametry

  • Wartość
    Typ elementu w kontrolowanej sekwencji.

  • Kontener
    Typ podstawowej kontener.

Elementy członkowskie

Definicja typu

Opis

priority_queue::const_reference (STL/CLR)

Typ stałego odwołania do elementu.

priority_queue::container_type (STL/CLR)

Typ podstawowej kontener.

priority_queue::difference_type (STL/CLR)

Typ podpisanej odległości między dwoma elementami.

priority_queue::generic_container (STL/CLR)

Typ rodzajowy interfejs dla karty kontenera.

priority_queue::generic_value (STL/CLR)

Typ elementu dla rodzajowego interfejsu dla karty kontenera.

priority_queue::reference (STL/CLR)

Typ odwołania do elementu.

priority_queue::size_type (STL/CLR)

Typ podpisanej odległości między dwoma elementami.

priority_queue::value_compare (STL/CLR)

Zamawianie delegat na dwa elementy.

priority_queue::value_type (STL/CLR)

Typ elementu.

Funkcji członka

Opis

priority_queue::assign (STL/CLR)

Zastępuje wszystkie elementy.

priority_queue::empty (STL/CLR)

Badania, czy elementy nie są obecnie.

priority_queue::get_container (STL/CLR)

Uzyskuje dostęp do podstawowej kontener.

priority_queue::pop (STL/CLR)

Usuwa element najwyższa priorytet.

priority_queue::priority_queue (STL/CLR)

Konstruuje obiekt kontenera.

priority_queue::push (STL/CLR)

Dodaje nowy element.

priority_queue::size (STL/CLR)

Oblicza liczbę elementów.

priority_queue::top (STL/CLR)

Uzyskuje dostęp do elementu najwyższy priorytet.

priority_queue::to_array (STL/CLR)

Kopiuje kontrolowanej sekwencji do nowej tablicy.

priority_queue::value_comp (STL/CLR)

Kopiuje zamawiania delegat na dwa elementy.

Właściwość

Opis

priority_queue::top_item (STL/CLR)

Uzyskuje dostęp do elementu najwyższy priorytet.

Operator

Opis

priority_queue::operator= (STL/CLR)

Zastępuje kontrolowanej sekwencji.

Interfejsy

Interfejs

Opis

ICloneable

Duplikowanie obiektów.

IPriorityQueue<wartości, kontener>

Obsługa karty rodzajowy kontenera.

Uwagi

Obiekt przydziela i zwalnia pamięci masowej w sekwencji kontroluje przez kontener podstawowej typu Container, na którym znajduje się Value elementy i rozwija się na żądanie.Utrzymuje sekwencji zamówić jako sterty, z elementem najwyższy priorytet (górny element), łatwo dostępne i wymiennych.Obiekt ogranicza dostęp do pchania nowe elementy i pojawiały tylko najwyższy priorytet element, realizacji priorytetu kolejki.

Obiekt zamówienia sekwencji kontroluje przez wywołanie obiektu delegowanego przechowywanych typu priority_queue::value_compare (STL/CLR).Można okreolić obiekt przechowywanych delegata podczas konstruowania priority_queue; Jeśli określisz żadnego obiektu delegowanego, wartością domyślną jest porównanie operator<(value_type, value_type).Dostęp do przechowywanej obiektu przez wywołanie funkcji członka priority_queue::value_comp (STL/CLR)().

Obiektu delegowanego musi nakładać ścisłe słabe zamawiania na wartości typu priority_queue::value_type (STL/CLR).Oznacza to, że dla dwóch dowolnych kluczy X i Y:

value_comp()(X, Y)Zwraca wartość Boolean samego wyniku przy każdym wywołaniu.

Jeśli value_comp()(X, Y) ma wartość true, a następnie value_comp()(Y, X) musi mieć wartość false.

Jeśli value_comp()(X, Y) ma wartość true, a następnie X mówi się, że zamówiony przed Y.

Jeśli !value_comp()(X, Y) && !value_comp()(Y, X) ma wartość true, a następnie X i Y mówi się, że zamawianie równoważne.

Dla dowolnego elementu X czy poprzedza Y w kontrolowanej sekwencji key_comp()(Y, X) ma wartość false. (Dla domyślnego obiektu delegowanego, klucze nigdy nie spadek wartości.)

Elementu o największym priorytecie jest zatem jednym z elementów, które nie jest nakazane przed innego elementu.

Ponieważ podstawowej kontener utrzymuje elementy uporządkowane w postaci stosu:

Kontener musi obsługiwać Iteratory.

Elementy z zamawianie równoważne mogą być pojawił się w innej kolejności niż zostały one przekazane. (Kolejność nie jest stabilne.)

W efekcie kandydatami do podstawowej kontener obejmują deque (STL/CLR) i vector (STL/CLR).

Wymagania

Nagłówek:<cliext/kolejka.>

Przestrzeń nazw: cliext

Zobacz też

Informacje

deque (STL/CLR)

queue (STL/CLR)

stack (STL/CLR)

vector (STL/CLR)

Inne zasoby

Odwołanie do biblioteki STL/CLR