Namensräume
Varianten
Aktionen

std::bitset<N>::flip

Von cppreference.com
< cpp‎ | utility‎ | bitset
 
 
Dienstprogramm-Bibliotheken
Sprachunterstützung
Typunterstützung (Basistypen, RTTI)
Bibliotheks-Feature-Test-Makros (C++20)
Programm-Dienstprogramme
Variadische Funktionen
Coroutine-Unterstützung (C++20)
Vertragsunterstützung (C++26)
Drei-Wege-Vergleich
(C++20)
(C++20)(C++20)(C++20)  
(C++20)(C++20)(C++20)

Allgemeine Hilfsmittel
Relationale Operatoren (in C++20 veraltet)
 
 
bitset& flip();
(1) (noexcept seit C++11)
(constexpr seit C++23)
bitset& flip( std::size_t pos );
(2) (constexpr seit C++23)

Schaltet Bits um, d.h. ändert true Werte in false und false Werte in true. Entspricht einer logischen NICHT-Operation auf einem Teil oder dem gesamten Bitset.

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

Inhalt

[edit] Parameter

pos - die Position des umzuschaltenden Bits

[edit] Rückgabewert

*this

[edit] Ausnahmen

2) Wirft std::out_of_range, wenn pos keiner gültigen Bitposition entspricht.

[edit] 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

[edit] Fehlerberichte

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

DR angewendet auf Verhalten wie veröffentlicht Korrigiertes Verhalten
LWG 2250 C++98 war das Verhalten undefiniert, wenn pos
keiner gültigen Bitposition entsprach
wirft in diesem Fall immer eine
Ausnahme

[edit] Siehe auch

setzt Bits auf true oder auf einen gegebenen Wert
(public member function) [edit]
setzt Bits auf false
(public member function) [edit]
führt binäre AND-, OR-, XOR- und NOT-Operationen durch
(public member function) [edit]
schaltet alle Bits um
(public member function of std::vector<bool,Allocator>) [edit]