Freigeben über


stack Class

Ein Adapter Containerklasse Vorlage, die eine Einschränkung der Funktionalität Einschränken des Zugriffs auf das Element zuletzt hinzugefügt wurde, um einige zugrunde liegenden Containertyp bereitstellt.Die Stack-Klasse wird verwendet, wenn es ist wichtig, dass nur die Stack-Operationen auf den Container ausgeführt werden.

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

Parameter

  • Typ
    Der Datentyp des Elements im Stapel gespeichert werden.

  • Container
    Der Typ des zugrunde liegenden Container verwendet, um den Stapel zu implementieren.Der Standardwert ist die Klasse deque*<Type>*.

Hinweise

Die Elemente der Klasse Typ gemäß der ersten Vorlage Parameter eines Stack-Objekts sind gleichbedeutend mit Value_type und muss dem Typ des Elements in der zugrunde liegenden Container-Klasse entsprechen Container durch den zweiten Vorlagenparameter der festgelegt.Die Type muss zugeordnet werden, so dass es möglich, Objekte dieses Typs zu kopieren und Zuweisen von Werten zu Variablen dieses Typs ist.

Geeignet für Stapel zugrunde liegende Containerklassen sind Deque, Liste, und Vektor, oder andere Sequenzcontainer den Betrieb eines unterstützt wieder, push_back, und pop_back.Die zugrunde liegenden Container-Klasse wird in der Container-Adapter, gekapselt, die nur die begrenzte Anzahl von Memberfunktionen der Sequenz-Container als eine öffentliche Schnittstelle verfügbar macht.

Die Stack-Objekte sind vergleichbare Gleichheit, wenn und nur wenn die Elemente der Klasse Typ Gleichheit vergleichbar sind, und sind weniger-als vergleichbar, wenn und nur wenn die Elemente der Klasse Typ sind weniger-als vergleichbar.

  • Die Stack-Klasse unterstützt eine Last in, First-Out (LIFO)-Datenstruktur.Eine gute analoge im Auge zu behalten, wäre ein Stapel von Platten.Elemente (Platten) können eingefügt, überprüft oder entfernt die Spitze des Stapels, die das letzte Element am Ende des base Containers ist.Die Beschränkung auf die nur das oberste Element ist der Grund für die Verwendung der Stack-Klasse.

  • Die Queue-Klasse eine First-in-First-Out (FIFO) Datenstruktur unterstützt.Eine gute Analog zu berücksichtigen wäre Menschen Schlange für einen Kassierer.Elemente (Menschen) an das Ende der Zeile hinzugefügt werden können und werden entfernt, die vor der Linie.Die Vorder- und Rückseite einer Zeile überprüft werden.Die Beschränkung auf die nur die Vorder- und Rückseite Elemente auf diese Weise ist der Grund Fur mithilfe der Queue-Klasse.

  • Die Priority_queue-Klasse seiner Elemente bestellt, so dass das größte Element immer an der Spitze.Einfügen eines Elements und die Inspektion und entfernt das oberste Element unterstützt.Eine gute Analog zu berücksichtigen wäre Menschen Schlange, wo sie nach Alter, Höhe oder anderen Kriterien angeordnet werden.

56fa1zk5.collapse_all(de-de,VS.110).gifKonstruktoren

Stapel

Erstellt ein stack leer oder, ist eine Kopie einer Basis Container-Objekt.

56fa1zk5.collapse_all(de-de,VS.110).gifTypedefs

Sie container_type

Ein Typ, der den base Container angepasst werden, durch eine stack.

size_type

Eine Ganzzahl ohne Vorzeichen, die die Anzahl der Elemente in darstellen, kann ein stack.

value_type

Ein Typ, der den Typ des Objekts gespeichert, als ein Element in einem stack.

56fa1zk5.collapse_all(de-de,VS.110).gifMember-Funktionen

empty

Testet, ob die stack ist leer.

pop

Entfernt das Element vom oberen Rand der stack.

push

Fügt ein Element an der Oberkante der stack.

size

Gibt die Anzahl der Elemente in der stack.

top

Gibt einen Verweis auf ein Element am oberen Rand der stack.

Anforderungen

Header: <stack>

Namespace: std

Siehe auch

Referenz

Threadsicherheit in der C++-Standardbibliothek

Standardvorlagenbibliothek

Weitere Ressourcen

Stapel Member

<stack> Member