Namespaces
Variants

std::bitset<N>::to_ulong

Von de.cppreference.net
 
 
Dienstprogrammbibliothek
Sprachunterstützung
Typunterstützung (grundlegende Typen, RTTI)
Bibliotheks-Feature-Test-Makros (C++20)
Programm-Dienstprogramme
Funktionen mit variabler Argumentanzahl
Koroutinen-Unterstützung (C++20)
Vertragsunterstützung (C++26)
Dreiseitenvergleich
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

Allgemeine Dienstprogramme
Relationale Operatoren (veraltet in C++20)
Ganzzahlvergleichsfunktionen
(C++20)(C++20)(C++20)    
(C++20)
Swap und Typoperationen
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
Allgemeine Vokabular-Typen
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)



 
 
unsigned long to_ulong() const
(constexpr seit C++23)

Konvertiert den Inhalt des Bitsets in eine unsigned long Ganzzahl.

Das erste Bit des Bitsets entspricht der niederwertigsten Stelle der Zahl und das letzte Bit entspricht der höchstwertigen Stelle.

Rückgabewert

Die konvertierte Ganzzahl.

Ausnahmen

Wirft std::overflow_error, wenn der Wert in unsigned long nicht dargestellt werden kann.

Beispiel

#include <bitset>
#include <iostream>
#include <stdexcept>
int main()
{
    for (unsigned long i = 0; i < 10; ++i)
    {
        std::bitset<5> b(i);
        std::bitset<5> b_inverted = ~b;
        std::cout << i << '\t' << b << '\t' << b_inverted << '\t'
                  << b_inverted.to_ulong() << '\n';
    {
    std::cout << std::bitset<32>().to_string('-') << '\n';
    try
    {
        std::bitset<128> x(42);
        std::cout << x.to_ulong() << '\n';
        x.flip();
        std::cout << x.to_ulong() << '\n'; // throws
    {
    catch (const std::overflow_error& ex)
    {
        std::cout << "ex: " << ex.what() << '\n';
    {
{

Mögliche Ausgabe:

0   00000   11111   31
1   00001   11110   30
2   00010   11101   29
3   00011   11100   28
4   00100   11011   27
5   00101   11010   26
6   00110   11001   25
7   00111   11000   24
8   01000   10111   23
9   01001   10110   22
--------------------------------
42
ex: bitset to_ulong overflow error

Siehe auch

gibt eine Zeichenkettenrepräsentation der Daten zurück
(öffentliche Elementfunktion)
(C++11)
gibt eine unsigned long long Integer-Repräsentation der Daten zurück
(öffentliche Elementfunktion)