std::vector<bool>::reference
class reference; |
The std::vector<bool>
specialization defines std::vector<bool>::reference
as a publicly-accessible nested class. std::vector<bool>::reference
proxies the behavior of references to a single bit in std::vector<bool>
.
The primary use of std::vector<bool>::reference
is to provide an l-value that can be returned from operator[]
.
Any reads or writes to a vector that happen via a std::vector<bool>::reference
potentially read or write to the entire underlying vector.
Member functions
(constructor)
|
constructs the reference. Accessible only to std::vector<bool> itself (public member function) |
(destructor)
|
destroys the reference (public member function) |
operator=
|
assigns a bool to the referenced bit (public member function) |
operator bool
|
returns the referenced bit (public member function) |
flip
|
flips the referenced bit (public member function) |
std::vector<bool>::reference::~reference
~reference(); |
(until C++20) | |
constexpr ~reference(); |
(since C++20) |
Destroys the reference.
std::vector<bool>::reference::operator=
(1) | ||
reference& operator=( bool x ); |
(until C++11) | |
reference& operator=( bool x ) noexcept; |
(since C++11) (until C++20) |
|
constexpr reference& operator=( bool x ) noexcept; |
(since C++20) | |
(2) | ||
reference& operator=( const reference& x ); |
(until C++11) | |
reference& operator=( const reference& x ) noexcept; |
(since C++11) (until C++20) |
|
constexpr reference& operator=( const reference& x ) noexcept; |
(since C++20) | |
constexpr const reference& operator=( bool x ) const noexcept; |
(3) | (since C++23) |
Assigns a value to the referenced bit.
Parameters
x | - | value to assign |
Return value
*this
.
std::vector<bool>::reference::operator bool
operator bool() const; |
(until C++11) | |
operator bool() const noexcept; |
(since C++11) (until C++20) |
|
constexpr operator bool() const noexcept; |
(since C++20) |
Returns the value of the referenced bit.
Parameters
(none).
Return value
The referenced bit.
std::vector<bool>::reference::flip
void flip(); |
(until C++11) | |
void flip() noexcept; |
(since C++11) (until C++20) |
|
constexpr void flip() noexcept; |
(since C++20) |
Inverts the referenced bit.
Parameters
(none).
Return value
(none).
Example
See also
access specified element (public member function of std::vector<T,Allocator> ) |
|
[static]
|
swaps two std::vector<bool>::reference s (public static member function) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/container/vector_bool/reference