Namensräume
Varianten
Aktionen

std::bitset<N>::set

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& set();
(1) (noexcept seit C++11)
(constexpr seit C++23)
bitset& set( std::size_t pos, bool value = true );
(2) (constexpr seit C++23)

Setzt alle Bits auf true oder setzt ein einzelnes Bit auf den angegebenen Wert.

1) Setzt alle Bits auf true.
2) Setzt das Bit an Position pos auf den Wert value.

Inhalt

[edit] Parameter

pos - die Position (gezählt ab 0, d.h. vom niederwertigsten zum höchstwertigsten Bit) des zu setzenden Bits
value - der Wert, auf den das Bit gesetzt werden soll

[edit] Rückgabewert

*this

[edit] Ausnahmen

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

[edit] Beispiel

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

Ausgabe

00000000
11111111
00000000
10101010

[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 186 C++98 der Typ von value war int korrigiert zu bool
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 false
(public member function) [edit]
vertauscht die Werte von Bits
(public member function) [edit]