Udostępnij za pośrednictwem


priority_queue (STL/CLR)

Klasa szablonu opisuje obiekt, który kontroluje różne długości uporządkowane sekwencja elementów, która ma ograniczony dostęp.Karta kontenera priority_queue do zarządzania podstawowej kontenera, jako priorytet kolejki.

W opisie poniżej GValue jest taka sama, jak Value jest typem odwołania, w którym to przypadku jest Value^.Podobnie GContainer jest taka sama, jak Container jest typem 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 kontenera podstawowej.

Członkowie

Definicja typu

Opis

priority_queue::const_reference (STL/CLR)

Typ stałej odwołanie do elementu.

priority_queue::container_type (STL/CLR)

Typ kontenera podstawowej.

priority_queue::difference_type (STL/CLR)

Typ podpisane odległość między dwoma elementami.

priority_queue::generic_container (STL/CLR)

Typ rodzajowy interfejs karty kontenera.

priority_queue::generic_value (STL/CLR)

Typ elementu dla rodzajowy interfejs karty kontenera.

priority_queue::Reference (STL/CLR)

Typ odwołania do elementu.

priority_queue::size_type (STL/CLR)

Typ podpisane odległość między dwoma elementami.

priority_queue::value_compare (STL/CLR)

Zamawiania obiektu delegowanego dwa elementy.

priority_queue::value_type (STL/CLR)

Typ elementu.

Funkcja Członkowskie

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 podstawowych kontenera.

priority_queue::pop (STL/CLR)

Usuwa element najwyższa priorytet.

priority_queue::priority_queue (STL/CLR)

Tworzy obiekt kontenera.

priority_queue::push (STL/CLR)

Dodaje nowy element.

priority_queue::size (STL/CLR)

Zlicza liczbę elementów.

priority_queue::top (STL/CLR)

Uzyskuje dostęp do elementu najwyższy priorytet.

priority_queue::to_array (STL/CLR)

Kopiuje kontrolowanych sekwencji nowej tablicy.

priority_queue::value_comp (STL/CLR)

Kopiuje zamawiania obiektu delegowanego dla dwóch elementów.

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 kontrolowanych sekwencji.

Interfejsy

Interfejs

Opis

ICloneable

Duplikowanie obiektów.

IPriorityQueue < wartość, kontener >

Utrzymanie karty kontenerem.

Uwagi

Obiekt przydziela i zwalnia składowania w sekwencji kontroluje poprzez podstawowej kontenera, typu Container, który przechowuje Value elementów i powiększa się na żądanie.Zachowuje sekwencji zamówiona sterty, z elementem najwyższy priorytet (top element) łatwo dostępne i wymiennych.Obiekt ogranicza dostęp do pchania nowe elementy i ściągnięcie tylko najwyższy priorytet elementu, wykonania priorytetu kolejki.

Obiekt zamówienia sekwencji kontroluje, wywołując obiektów przechowywanych delegata typu priority_queue::value_compare (STL/CLR).Można określić obiekt przechowywane delegata podczas konstruowania priority_queue; Jeżeli pełnomocnik żaden obiekt nie zostanie określony, domyślnie jest porównanie operator<(value_type, value_type).Dostęp ten obiekt przechowywanych przez wywołanie funkcji składowej priority_queue::value_comp (STL/CLR)().

Obiekt pełnomocnik musi nakładać ścisłe słabe zamawiania na wartości typu priority_queue::value_type (STL/CLR).Oznacza to dla dowolnego z dwóch kluczy X i Y:

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

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

Jeśli value_comp()(X, Y) ma wartość true, następnie X jest powiedział zamawiać przed Y.

Jeśli !value_comp()(X, Y) && !value_comp()(Y, X) ma wartość true, następnie X i Y są wywierający równoważne zamawiania.

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

Element najwyższy priorytet więc jest jednym z elementów, które nie są uporządkowane przed inny element.

Ponieważ podstawowe kontenera przechowuje elementy uporządkowane jako sterty:

Kontener musi obsługiwać Iteratory losowy dostęp.

Równoważne kolejność elementów może być tam pojawi w innej kolejności niż zostały one przekazane.(Kolejność nie jest stabilne.)

Zatem kandydatów na podstawowej kontenera należą deque (STL/CLR) i vector (STL/CLR).

Wymagania

Nagłówek: < cliext/kolejki >

Obszar 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.