std::bitset<N>::set
Depuis fr.cppreference.net
bitset& set();
|
(1) | (noexcept depuis C++11) (constexpr depuis C++23) |
bitset& set( std::size_t pos, bool value = true );
|
(2) | (constexpr depuis C++23) |
Met tous les bits à true ou met un bit à une valeur spécifiée.
1) Met tous les bits à
true.2) Met le bit à la position
pos à la valeur value.Paramètres
| pos | - | la position (en comptant à partir de 0 , c'est-à-dire du bit le moins significatif au plus significatif) du bit à définir |
| value | - | la valeur à attribuer au bit |
Valeur de retour
* this
Exceptions
Exemple
Exécuter ce code
#include <bitset> #include <cstddef> #include <iostream> int main() { std::bitset<8> b; std::cout << b << '\n'; std::cout << b.set() << '\n'; std::cout << b.reset() << '\n'; for (std::size_t i = 1; i < b.size(); i += 2) b.set(i); std::cout << b << '\n'; }
Sortie :
00000000 11111111 00000000 10101010
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 | Appliqué à | Comportement publié | Comportement corrigé |
|---|---|---|---|
| LWG 186 | C++98 | le type de value était int | corrigé en bool |
| LWG 2250 | C++98 |
le comportement était indéfini si
pos
ne
correspondait pas à une position de bit valide |
lève toujours une
exception dans ce cas |
Voir aussi
|
définit les bits à
false
(fonction membre publique) |
|
|
inverse les valeurs des bits
(fonction membre publique) |