Namespaces
Variants
Views
Actions

Difference between revisions of "cpp/container/forward list"

From cppreference.com
< cpp‎ | container
(add template params)
(fmt)
Line 14: Line 14:
 
{{tt|std::forward_list}} meets the requirements of {{concept|Container}} (except for the {{tt|size()}} member function), {{concept|AllocatorAwareContainer}} and {{concept|SequenceContainer}}.
 
{{tt|std::forward_list}} meets the requirements of {{concept|Container}} (except for the {{tt|size()}} member function), {{concept|AllocatorAwareContainer}} and {{concept|SequenceContainer}}.
  
====Template parameters====
+
===Template parameters===
 
{{param list begin}}
 
{{param list begin}}
 
{{param list template | cpp/container/param list T | deque}}
 
{{param list template | cpp/container/param list T | deque}}

Revision as of 16:03, 12 May 2013

 
 
 
 
Defined in header <forward_list>
template<

    class T,
    class Allocator = std::allocator<T>

> class forward_list;
(since C++11)

std::forward_list is a container that supports fast insertion and removal of elements from anywhere in the container. Fast random access is not supported. It is implemented as singly-linked list and essentially does not have any overhead compared to its implementation in C. Compared to std::list this container provides more space efficient storage when bidirectional iteration is not needed.

Addition, removal and moving the elements within the list or across several lists does not invalidate the iterators. An iterator is invalidated only when the corresponding element is deleted.

std::forward_list meets the requirements of Template:concept (except for the size() member function), Template:concept and Template:concept.

Contents

Template parameters

Template:param list templateTemplate:param list template

Member types

Template:cpp/container/dcl list value typeTemplate:cpp/container/dcl list allocator typeTemplate:cpp/container/dcl list size typeTemplate:cpp/container/dcl list difference typeTemplate:cpp/container/dcl list referenceTemplate:cpp/container/dcl list const referenceTemplate:cpp/container/dcl list pointerTemplate:cpp/container/dcl list const pointerTemplate:cpp/container/dcl list iteratorTemplate:cpp/container/dcl list const iterator
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 assignTemplate:cpp/container/dcl list get allocatorTemplate:cpp/container/dcl list frontTemplate:cpp/container/dcl list before beginTemplate:cpp/container/dcl list beginTemplate:cpp/container/dcl list endTemplate:cpp/container/dcl list emptyTemplate:cpp/container/dcl list max sizeTemplate:cpp/container/dcl list clearTemplate:cpp/container/dcl list insert afterTemplate:cpp/container/dcl list emplace afterTemplate:cpp/container/dcl list erase afterTemplate:cpp/container/dcl list push frontTemplate:cpp/container/dcl list emplace frontTemplate:cpp/container/dcl list pop frontTemplate:cpp/container/dcl list resizeTemplate:cpp/container/dcl list swapTemplate:cpp/container/dcl list mergeTemplate:cpp/container/dcl list splice afterTemplate:cpp/container/dcl list removeTemplate:cpp/container/dcl list reverseTemplate:cpp/container/dcl list uniqueTemplate:cpp/container/dcl list sort
Element access
Iterators
Capacity
Modifiers
Operations

Non-member functions

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