std::vector

From Cppreference

Jump to: navigation, search
Defined in header <vector>

template<

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

> class vector;

std::vector is a container that supports fast random access to the elements and fast insertion or removal of elements at the end of the container. Fast element insertion or removal in the middle of the container is not supported. It is implemented as an contiguous array, which means that pointer arithmetic is fully supported, and a pointer to an element of a vector may be passed to any C function that expects a pointer to an element of an array.

Contents

[edit] Member types

Member type Definition
value_type T
allocator_type Allocator
size_type Unsigned integral type (usually size_t)
difference_type Signed integer type (usually ptrdiff_t)
reference Allocator::reference (pre-C++11 version)
value_type& (C++11 version)
const_reference Allocator::const_reference (pre-C++11 version)
const value_type& (C++11 version)
pointer T* (pre-C++11 version)
std::allocator_traits<Allocator>::pointer (C++11 version)
const_pointer const T* (pre-C++11 version)
std::allocator_traits<Allocator>::const_pointer (C++11 version)
iterator Random access iterator
const_iterator Constant random access iterator
reverse_iterator std::reverse_iterator<iterator>
const_reverse_iterator std::reverse_iterator<const_iterator>

[edit] Member functions

(constructor)
constructs the vector
(public member function)
(destructor)
destructs the vector
(public member function)
operator=
assigns values to the container
(public member function)
assign
assigns values to the container
(public member function)
get_allocator
returns the associated allocator
(public member function)
Element access
at
access specified element with bounds checking
(public member function)
operator[]
access specified element
(public member function)
front
access the first element
(public member function)
back
access the last element
(public member function)
data
direct access to the underlying array
(public member function)
Iterators
begin
cbegin

returns an iterator to the beginning
(public member function)
end
cend

returns an iterator to the end
(public member function)
rbegin
crbegin

returns a reverse iterator to the beginning
(public member function)
rend
crend

returns a reverse iterator to the end
(public member function)
Capacity
empty
checks whether the container is empty
(public member function)
size
returns the number of elements
(public member function)
max_size
returns the maximum possible number of elements
(public member function)
reserve
reserves storage
(public member function)
capacity
returns the number of elements that can be held in currently allocated storage
(public member function)
shrink_to_fit (C++11)
reduces memory usage by freeing unused memory
(public member function)
Modifiers
clear
clears the contents
(public member function)
insert
inserts elements
(public member function)
emplace (C++11)
constructs element in-place
(public member function)
erase
erases elements
(public member function)
push_back
inserts elements to the end
(public member function)
emplace_back (C++11)
constructs elements in-place at the end
(public member function)
pop_back
removes the last element
(public member function)
resize
changes the number of elements stored
(public member function)
swap
swaps the contents
(public member function)

[edit] Non-member functions

operator==
operator!=
operator<
operator<=
operator>
operator>=
lexicographically compares the values in the container
(function)
std::swap(std::vector)
specializes the std::swap() algorithm
(function template)