< cpp‎ | container
Revision as of 11:31, 26 April 2013 by Cubbi (Talk | contribs)

Defined in header <stack>

    class T,
    class Container = std::deque<T>

> class stack;

The std::stack class is a container adapter that gives the programmer the functionality of a stack - specifically, a FILO (first-in, last-out) data structure.

The class template acts as a wrapper to the underlying container - only a specific set of functions is provided. The stack pushes and pops the element from the back of the underlying container, known as the top of the stack.


Template parameters

T - The type of the stored elements.
Container - The type of the underlying container to use to store the elements. The container must satisfy the requirements of SequenceContainer. Additionally, it must provide the following functions with the usual semantics:
  • back()
  • push_back()
  • pop_back()

The standard containers std::vector, std::deque and std::list satisfy these requirements.

Member types

Template:cpp/container/dcl list container typeTemplate:cpp/container/dcl list value typeTemplate:cpp/container/dcl list size typeTemplate:cpp/container/dcl list referenceTemplate:cpp/container/dcl list const reference
Member type Definition

Member functions

Template:cpp/container/dcl list constructorTemplate:cpp/container/dcl list destructorTemplate:cpp/container/dcl list operator=Template:cpp/container/dcl list topTemplate:cpp/container/dcl list emptyTemplate:cpp/container/dcl list sizeTemplate:cpp/container/dcl list pushTemplate:cpp/container/dcl list emplaceTemplate:cpp/container/dcl list popTemplate:cpp/container/dcl list swapTemplate:cpp/container/dcl list c
Element access

Member objects

Non-member functions

Template:cpp/container/dcl list operator cmpTemplate:cpp/container/dcl list swap2

Helper classes

Template:cpp/container/dcl list uses allocator