Namespaces
Variants
Views
Actions

Difference between revisions of "cpp/container/queue"

From cppreference.com
< cpp‎ | container
m (Update links.)
(vector has no pop_front member)
Line 22: Line 22:
 
* {{tt|pop_front()}}
 
* {{tt|pop_front()}}
  
The standard containers {{lc|std::vector}}, {{lc|std::deque}} and {{lc|std::list}} satisfy these requirements.  
+
The standard containers {{lc|std::deque}} and {{lc|std::list}} satisfy these requirements.  
 
}}{{par end}}
 
}}{{par end}}
  

Revision as of 12:32, 6 August 2013

 
 
 
 
Defined in header <queue>
template<

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

> class queue;

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

The class template acts as a wrapper to the underlying container - only a specific set of functions is provided. The queue pushes the elements on the back of the underlying container and pops them from the front.

Contents

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 Template:concept. Additionally, it must provide the following functions with the usual semantics:
  • back()
  • front()
  • push_back()
  • pop_front()

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

Member types

Member type Definition
container_type Container[edit]
value_type Container::value_type[edit]
size_type Container::size_type[edit]
reference Container::reference[edit]
const_reference Container::const_reference[edit]

Member functions

constructs the queue
(public member function) [edit]
destructs the queue
(public member function) [edit]
assigns values to the container adaptor
(public member function) [edit]
Element access
access the first element
(public member function) [edit]
access the last element
(public member function) [edit]
Capacity
checks whether the container adaptor is empty
(public member function) [edit]
returns the number of elements
(public member function) [edit]
Modifiers
inserts element at the end
(public member function) [edit]
(C++11)
constructs element in-place at the end
(public member function) [edit]
removes the first element
(public member function) [edit]
(C++11)
swaps the contents
(public member function) [edit]

Member objects

Container c
the underlying container
(protected member object) [edit]

Non-member functions

lexicographically compares the values of two queues
(function template) [edit]
specializes the std::swap algorithm
(function template) [edit]

Helper classes

specializes the std::uses_allocator type trait
(class template specialization) [edit]