Namespaces
Variants

std::bitset<N>:: flip

From cppreference.net
Utilities library
bitset & flip ( ) ;
(1) (noexcept seit C++11)
(constexpr seit C++23)
bitset & flip ( std:: size_t pos ) ;
(2) (constexpr seit C++23)

Dreht Bits um, d.h. ändert true -Werte zu false und false -Werte zu true . Entspricht einer logischen NOT-Operation auf einen Teil oder alle Bits des Bitsets.

1) Kehrt alle Bits um (wie operator~ , aber in-place).
2) Wechselt das Bit an der Position pos .

Inhaltsverzeichnis

Parameter

pos - die Position des zu kippenden Bits

Rückgabewert

* this

Ausnahmen

2) Wirft std::out_of_range wenn pos keiner gültigen Bit-Position entspricht.

Beispiel

#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';
}

Ausgabe:

0000
0001
0101
1010

Fehlerberichte

Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.

DR Angewendet auf Verhalten wie veröffentlicht Korrektes Verhalten
LWG 2250 C++98 das Verhalten war undefiniert wenn pos nicht
einer gültigen Bitposition entspricht
wirft in diesem Fall immer eine
Exception

Siehe auch

Setzt Bits auf true oder gegebenen Wert
(öffentliche Elementfunktion)
Setzt Bits auf false
(öffentliche Elementfunktion)
Führt binäres AND, OR, XOR und NOT aus
(öffentliche Elementfunktion)
Invertiert alle Bits
(öffentliche Elementfunktion von std::vector<bool,Allocator> )