std::bitset<N>::flip
| (1) | ||
bitset& flip(); |
(до C++11) | |
bitset& flip() noexcept; |
(с C++11) (constexpr с C++23) |
|
bitset& flip( std::size_t pos ); |
(2) | (constexpr с C++23) |
Инвертирует биты, т.е. изменяет значения true на false и значения false на true. Эквивалентно логическому НЕ для части или всего битового набора.
1) Инвертирует все биты (как
operator~, но на месте).
2) Инвертирует бит в позиции
pos.Параметры
| pos | - | позиция бита для инвертирования |
Возвращаемое значение
*this
Исключения
Пример
#include <bitset>
#include <iostream>
int main()
{
std::bitset<4> flops;
std::cout << flops << '\n'
<< flops.flip(0) << '\n'
<< flops.flip(2) << '\n'
<< flops.flip() << '\n';
}Вывод:
0000 0001 0101 1010
См. также
устанавливает биты в true или заданное значение(публичный член-функция) |
|
устанавливает биты в false(публичный член-функция) |
|
| выполняет побитовые И, ИЛИ, ИСКЛЮЧАЮЩЕЕ ИЛИ и НЕ (публичный член-функция) |
|
| инвертирует все биты (публичный член-функция std::vector<bool,Allocator>) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/utility/bitset/flip