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 |
---|---|
Typ stałego odwołania do elementu. |
|
Typ podstawowej kontener. |
|
Typ podpisanej odległości między dwoma elementami. |
|
Typ rodzajowy interfejs dla karty kontenera. |
|
Typ elementu dla rodzajowego interfejsu dla karty kontenera. |
|
Typ odwołania do elementu. |
|
Typ podpisanej odległości między dwoma elementami. |
|
Zamawianie delegat na dwa elementy. |
|
Typ elementu. |
Funkcji członka |
Opis |
---|---|
Zastępuje wszystkie elementy. |
|
Badania, czy elementy nie są obecnie. |
|
Uzyskuje dostęp do podstawowej kontener. |
|
Usuwa element najwyższa priorytet. |
|
Konstruuje obiekt kontenera. |
|
Dodaje nowy element. |
|
Oblicza liczbę elementów. |
|
Uzyskuje dostęp do elementu najwyższy priorytet. |
|
Kopiuje kontrolowanej sekwencji do nowej tablicy. |
|
Kopiuje zamawiania delegat na dwa elementy. |
Właściwość |
Opis |
---|---|
Uzyskuje dostęp do elementu najwyższy priorytet. |
Operator |
Opis |
---|---|
Zastępuje kontrolowanej sekwencji. |
Interfejsy
Interfejs |
Opis |
---|---|
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