Freigeben über


queue Class

Eine Vorlagencontainer-Adapterklasse, die eine Einschränkung der Funktionalität für einen zugrunde liegenden Containertyp bietet und Zugriff auf die Vordergrund- und Rückseitenelementen beschränkt.Elemente können an der umgekehrten hinzugefügt oder aus Vordergrund entfernt werden, und Elemente können an jedem Ende der Warteschlange überprüft werden.

template <
   class Type, 
   class Container = deque<Type> 
>
class queue

Parameter

  • Text [Type]
    Der in der Warteschlange gespeichert werden, Elementdatentyp

  • Container
    Der Typ des zugrunde liegenden Containers verwendet, um die Warteschlange zu implementieren.

Hinweise

Die Elemente der Klasse Typ vereinbart im ersten Vorlagenparameter eines Warteschlangenobjekts sind mit value_type synonym und müssen den Typ des Elements in der zugrunde liegenden Containerklasse Container übereinstimmen vereinbart vom zweiten Vorlagenparameter.Typ zugewiesen werden muss, damit es möglich, Objekte dieses Typs zu kopieren ist und Werte in Variablen dieses Typs zuzuweisen.

Passende zugrunde liegende Containerklassen für Warteschlange enthalten Doppelschlange und Liste oder einen anderen Sequenzcontainer, der die Vorgänge von front, von back, von push_back und von pop_front unterstützt.Die zugrunde liegende Containerklasse wird innerhalb des Containeradapters gekapselt, die nur den eingeschränkten Satz der Sequenzcontainermemberfunktionen als öffentliche Schnittstelle verfügbar macht.

Die Warteschlangeobjekten sind und wenn auf Gleichheit vergleichbar nur wenn die Elemente der Klasse Typ auf Gleichheit vergleichbar sind, und sind weniger-als vergleichbar wenn und nur dann die Elemente der Klasse Typ sind weniger-als vergleichbar.

Es gibt drei Typen Containeradapter, die von STL definiert werden: Stapel, Warteschlangen und priority_queue.Jedes schränkt die Funktionalität einige zugrunde liegende Containerklasse ein, um eine genau gesteuerte Schnittstelle zu einer Standarddatenstruktur bereitzustellen.

  • Stapelklasse unterstützt eine Datenstruktur Last In, First Out (Last-In-First-Out).Eine gute zu beachten Entsprechung würde ein Stapel Platten sein.Elemente (Platten) werden nur von Anfang des Stapels eingefügt werden, überprüft oder entfernt werden, der das letzte Element am Ende des Basiscontainers ist.Die Einschränkung den Zugriff nur auf das oberste Element ist der Grund für die Verwendung der Stapelklasse.

  • Die Warteschlangenklasse unterstützt eine Datenstruktur First In, First Out (First-In-First-Out).Eine gute zu beachten Entsprechung würde die Personen sein, die für einen Kassierer ausrichten.Elemente (Personen) werden auf die Rückseite der Zeile und entfernt werden von am Beginn der Zeile hinzugefügt werden.werden der Vordergrund und die Rückseite einer Zeile überprüft werden.Die Einschränkung den Zugriff nur auf die Vordergrund- und back-Elemente ist auf diese Weise der Grund für die Verwendung der Warteschlangenklasse.

  • priority_queue-Klasse sortiert ihre Elemente, sodass das größte Element immer oben Position befindet.Es unterstützt Einfügen eines Elements und der Überprüfung und des Entfernens des obersten Elements.Eine gute zu beachten Entsprechung würde die Personen sein, die ausrichten, wo sie von Alter, Höhe oder ein anderes Kriterium angeordnet werden.

s23s3de6.collapse_all(de-de,VS.110).gifKonstruktoren

Warteschlange

Erstellt queue, das leer ist oder, das eine Kopie eines Basiscontainerobjekts ist.

s23s3de6.collapse_all(de-de,VS.110).gifTypedefs

container_type

Ein Typ, der durch den stellt queue angepasst werden Basiscontainer.

size_type

Ein vorzeichenlose Typ ganzen Zahl, der die Anzahl der Elemente in queue darstellen kann.

value_type

Ein Typ, der den Typ des Objekts gespeichert als Element in queue darstellt.

s23s3de6.collapse_all(de-de,VS.110).gifMemberfunktionen

back

Gibt einen Verweis auf den letzten und zuletzt hinzugefügtes Element an die queue zurück.

empty

Prüft, ob queue leer ist.

front

Gibt einen Verweis auf das erste Element sich in queue zurück.

pop

Entfernt ein Element aus der Vorderseite queue.

push

Fügt ein Element der umgekehrten queue hinzu.

size

Gibt die Anzahl der Elemente in queue zurück.

Anforderungen

Header: <queue>

Namespace: std

Siehe auch

Referenz

Threadsicherheit in der C++-Standardbibliothek

Standardvorlagenbibliothek