std::bitset<N>:: flip
From cppreference.net
C++
Utilities library
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::bitset
| Member types | ||||
| Member functions | ||||
|
(until C++20)
|
||||
| Element access | ||||
| Capacity | ||||
| Modifiers | ||||
|
bitset::flip
|
||||
| Conversions | ||||
|
(C++11)
|
||||
| Non-member functions | ||||
| Helper classes | ||||
|
(C++11)
|
||||
|
bitset
&
flip
(
)
;
|
(1) |
(aucune exception depuis C++11)
(constexpr depuis C++23) |
|
bitset
&
flip
(
std::
size_t
pos
)
;
|
(2) | (constexpr depuis C++23) |
Inverse les bits, c'est-à-dire transforme true en false et false en true . Équivalent à une opération logique NOT sur une partie ou la totalité du bitset.
1)
Inverse tous les bits (comme
operator~
, mais en place).
2)
Inverse le bit à la position
pos
.
Table des matières |
Paramètres
| pos | - | la position du bit à inverser |
Valeur de retour
* this
Exceptions
Exemple
Exécuter ce code
#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'; }
Sortie :
0000 0001 0101 1010
Rapports de défauts
Les rapports de défauts modifiant le comportement suivants ont été appliqués rétroactivement aux normes C++ précédemment publiées.
| DR | Applicable à | Comportement publié | Comportement corrigé |
|---|---|---|---|
| LWG 2250 | C++98 |
le comportement était indéfini si
pos
ne
correspond pas à une position de bit valide |
lève toujours une
exception dans ce cas |
Voir aussi
|
définit les bits à
true
ou à la valeur donnée
(fonction membre publique) |
|
|
définit les bits à
false
(fonction membre publique) |
|
|
effectue les opérations binaires AND, OR, XOR et NOT
(fonction membre publique) |
|
|
inverse tous les bits
(fonction membre publique de
std::vector<bool,Allocator>
)
|