vector<bool> Class

The vector<bool> class is a partial specialization of vector for elements of type bool. It has an allocator for the underlying type that's used by the specialization, which provides space optimization by storing one bool value per bit.

template<class Allocator = allocator<bool>> class vector< bool, Allocator >

This class template specialization behaves like vector, except for the differences explained in this article.

Operations that deal with the bool type correspond to values in the container storage. allocator_traits::construct is not used to construct these values.

const_pointer

A typedef to a const_iterator that can serve as a constant pointer to a Boolean element of the vector<bool>.

const_reference

A typedef for bool. After initialization, it does not observe updates to the original value.

pointer

A typedef to an iterator that can serve as a pointer to a Boolean element of the vector<bool>.

flip

Reverses all bits in the vector<bool>.

swap

Exchanges the elements of two vector<bool>s.

operator[]

Returns a simulated reference to the vector<bool> element at a specified position.

at

Functions the same as the unspecialized vector::at function, except that it uses the proxy class vector<bool>::reference. Also see operator[].

front

Functions the same as the unspecialized vector::front function, except that it uses the proxy class vector<bool>::reference. Also see operator[].

back

Functions the same as the unspecialized vector::back function, except that it uses the proxy class vector<bool>::reference. Also see operator[].

vector<bool> reference Class

A class that acts as a proxy to simulate bool& behavior, and whose objects can provide references to elements (single bits) within a vector<bool> object.

Header: <vector>

Namespace: std

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft