Namespaces
Variants
Views
Actions

Difference between revisions of "cpp/container/queue"

From cppreference.com
< cpp‎ | container
(Undo revision 47165 by Eendy (talk) too categorical, and a copy-paste error)
m (Shorten template names. Use {{lc}} where appropriate.)
Line 13: Line 13:
  
 
===Template parameters===
 
===Template parameters===
{{param list begin}}
+
{{par begin}}
{{param list item | T | The type of the stored elements.}}
+
{{par | T | The type of the stored elements.}}
{{param list item | Container | The type of the underlying container to use to store the elements. The container must satisfy the requirements of {{concept|SequenceContainer}}. Additionally, it must provide the following functions with the usual semantics:
+
{{par | Container | The type of the underlying container to use to store the elements. The container must satisfy the requirements of {{concept|SequenceContainer}}. Additionally, it must provide the following functions with the usual semantics:
  
 
* {{tt|back()}}
 
* {{tt|back()}}
Line 22: Line 22:
 
* {{tt|pop_front()}}
 
* {{tt|pop_front()}}
  
The standard containers {{c|std::vector}}, {{c|std::deque}} and {{c|std::list}} satisfy these requirements.  
+
The standard containers {{lc|std::vector}}, {{lc|std::deque}} and {{lc|std::list}} satisfy these requirements.  
}}{{param list end}}
+
}}{{par end}}
  
 
===Member types===
 
===Member types===
{{dcl list begin}}
+
{{dsc begin}}
{{dcl list hitem | Member type | Definition}}
+
{{dsc hitem | Member type | Definition}}
{{dcl list template | cpp/container/dcl list container_type | queue}}
+
{{dsc inc | cpp/container/dcl list container_type | queue}}
{{dcl list template | cpp/container/dcl list value_type | queue}}
+
{{dsc inc | cpp/container/dcl list value_type | queue}}
{{dcl list template | cpp/container/dcl list size_type | queue}}
+
{{dsc inc | cpp/container/dcl list size_type | queue}}
{{dcl list template | cpp/container/dcl list reference | queue}}
+
{{dsc inc | cpp/container/dcl list reference | queue}}
{{dcl list template | cpp/container/dcl list const_reference | queue}}
+
{{dsc inc | cpp/container/dcl list const_reference | queue}}
{{dcl list end}}
+
{{dsc end}}
  
 
===Member functions===
 
===Member functions===
{{dcl list begin}}
+
{{dsc begin}}
{{dcl list template | cpp/container/dcl list constructor | queue}}
+
{{dsc inc | cpp/container/dcl list constructor | queue}}
{{dcl list template | cpp/container/dcl list destructor | queue}}
+
{{dsc inc | cpp/container/dcl list destructor | queue}}
{{dcl list template | cpp/container/dcl list operator{{=}} | queue}}
+
{{dsc inc | cpp/container/dcl list operator{{=}} | queue}}
  
{{dcl list h2 | Element access}}
+
{{dsc h2 | Element access}}
{{dcl list template | cpp/container/dcl list front | queue}}
+
{{dsc inc | cpp/container/dcl list front | queue}}
{{dcl list template | cpp/container/dcl list back | queue}}
+
{{dsc inc | cpp/container/dcl list back | queue}}
  
{{dcl list h2 | Capacity}}
+
{{dsc h2 | Capacity}}
{{dcl list template | cpp/container/dcl list empty | queue}}
+
{{dsc inc | cpp/container/dcl list empty | queue}}
{{dcl list template | cpp/container/dcl list size | queue}}
+
{{dsc inc | cpp/container/dcl list size | queue}}
  
{{dcl list h2 | Modifiers}}
+
{{dsc h2 | Modifiers}}
{{dcl list template | cpp/container/dcl list push | queue}}
+
{{dsc inc | cpp/container/dcl list push | queue}}
{{dcl list template | cpp/container/dcl list emplace | queue}}
+
{{dsc inc | cpp/container/dcl list emplace | queue}}
{{dcl list template | cpp/container/dcl list pop | queue}}
+
{{dsc inc | cpp/container/dcl list pop | queue}}
{{dcl list template | cpp/container/dcl list swap | queue}}
+
{{dsc inc | cpp/container/dcl list swap | queue}}
  
{{dcl list h1 | Member objects}}
+
{{dsc h1 | Member objects}}
{{dcl list template | cpp/container/dcl list c | queue}}
+
{{dsc inc | cpp/container/dcl list c | queue}}
{{dcl list end}}
+
{{dsc end}}
  
 
===Non-member functions===
 
===Non-member functions===
{{dcl list begin}}
+
{{dsc begin}}
{{dcl list template | cpp/container/dcl list operator_cmp | queue}}
+
{{dsc inc | cpp/container/dcl list operator_cmp | queue}}
{{dcl list template | cpp/container/dcl list swap2 | queue}}
+
{{dsc inc | cpp/container/dcl list swap2 | queue}}
{{dcl list end}}
+
{{dsc end}}
  
 
===Helper classes===
 
===Helper classes===
{{dcl list begin}}
+
{{dsc begin}}
{{dcl list template | cpp/container/dcl list uses_allocator | queue}}
+
{{dsc inc | cpp/container/dcl list uses_allocator | queue}}
{{dcl list end}}
+
{{dsc end}}
  
 
[[de:cpp/container/queue]]
 
[[de:cpp/container/queue]]

Revision as of 18:40, 31 May 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::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 frontTemplate:cpp/container/dcl list backTemplate: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
Capacity
Modifiers

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