std::vector<bool>::reference
From cppreference.com
                    
                                        
                    < cpp | container | vector bool
                    
                                                            
                    | 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.
| Contents | 
[edit] 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() | ||
Destroys the reference.
std::vector<bool>::reference::operator=
| reference& operator=( bool x ); reference& operator=( const reference& x ); | ||
Assigns a value to the referenced bit.
Parameters
| x | - | value to assign | 
Return value
*this
Exceptions
| (none) | (until C++11) | 
| 
noexcept specification:   noexcept | (since C++11) | 
std::vector<bool>::reference::operator bool
| operator bool() const; | ||
Returns the value of the referenced bit.
Parameters
(none)
Return value
The referenced bit.
Exceptions
| (none) | (until C++11) | 
| 
noexcept specification:   noexcept | (since C++11) | 
std::vector<bool>::reference::flip
| void flip(); | ||
Inverts the referenced bit.
Parameters
(none)
Return value
(none)
Exceptions
| (none) | (until C++11) | 
| 
noexcept specification:   noexcept | (since C++11) | 
[edit] See also
| access specified element (public member function of std::vector) | |
| [static] | swaps two std::vector<bool>::references(public static member function) |