<vector>

Defines the container class template vector and several supporting templates.

The vector is a container that organizes elements of a given type in a linear sequence. It enables fast random access to any element, and dynamic additions and removals to and from the sequence. The vector is the preferred container for a sequence when random-access performance is at a premium.

Note

The <vector> library also uses the #include <initializer_list> statement.

For more information about the class vector, see vector Class. For information about the specialization vector<bool>, see vector<bool> class.

Syntax

namespace std {
template <class Type, class Allocator>
class vector;
template <class Allocator>
class vector<bool>;

template <class Allocator>
struct hash<vector<bool, Allocator>>;

// TEMPLATE FUNCTIONS
template <class Type, class Allocator>
bool operator== (
    const vector<Type, Allocator>& left,
    const vector<Type, Allocator>& right);

template <class Type, class Allocator>
bool operator!= (
    const vector<Type, Allocator>& left,
    const vector<Type, Allocator>& right);

template <class Type, class Allocator>
bool operator<(
    const vector<Type, Allocator>& left,
    const vector<Type, Allocator>& right);

template <class Type, class Allocator>
bool operator> (
    const vector<Type, Allocator>& left,
    const vector<Type, Allocator>& right);

template <class Type, class Allocator>
bool operator<= (
    const vector<Type, Allocator>& left,
    const vector<Type, Allocator>& right);

template <class Type, class Allocator>
bool operator>= (
    const vector<Type, Allocator>& left,
    const vector<Type, Allocator>& right);

template <class Type, class Allocator>
void swap (
    vector<Type, Allocator>& left,
    vector<Type, Allocator>& right);

}  // namespace std

Parameters

Type
The template parameter for the type of data stored in the vector.

Allocator
The template parameter for the stored allocator object responsible for memory allocation and deallocation.

left
The first (left) vector in a compare operation

right
The second (right) vector in a compare operation.

Members

Operators

Name Description
operator! = Tests if the vector object on the left side of the operator isn't equal to the vector object on the right side.
operator< Tests if the vector object on the left side of the operator is less than the vector object on the right side.
operator<= Tests if the vector object on the left side of the operator is less than or equal to the vector object on the right side.
operator== Tests if the vector object on the left side of the operator is equal to the vector object on the right side.
operator> Tests if the vector object on the left side of the operator is greater than the vector object on the right side.
operator>= Tests if the vector object on the left side of the operator is greater than or equal to the vector object on the right side.

Classes

Name Description
vector class A class template of sequence containers that arrange elements of a given type in a linear arrangement and allow fast random access to any element.

Specializations

Name Description
hash Returns a hash of the vector.
vector<bool> class A full specialization of the class template vector for elements of type bool with an allocator for the underlying type used by the specialization.

Requirements

Header: <vector>

Namespace: std

See also

Header Files Reference
Thread Safety in the C++ Standard Library
C++ Standard Library Reference