Namespaces
Variants

std::bitset<N>::to_ullong

Depuis fr.cppreference.net
 
 
Bibliothèque d'utilitaires
Support linguistique
Support des types (types de base, RTTI)
Macros de test de fonctionnalités de la bibliothèque (C++20)
Utilitaires de programme
Fonctions variadiques
Support des coroutines (C++20)
Support des contrats (C++26)
Comparaison à trois voies
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

Utilitaires généraux
Opérateurs relationnels (déprécié en C++20)
 
 
unsigned long long to_ullong() const
(depuis C++11)
(constexpr depuis C++23)

Convertit le contenu du bitset en un unsigned long long entier.

Le premier bit du bitset correspond au chiffre le moins significatif du nombre et le dernier bit correspond au chiffre le plus significatif.

Valeur de retour

L'entier converti

Exceptions

std::overflow_error si la valeur ne peut pas être représentée dans unsigned long long.

Exemple

#include <bitset>
#include <iostream>
#include <limits>
int main()
{
    std::bitset<std::numeric_limits<unsigned long long>::digits> b
    (
        0x123456789abcdef0LL
    );
    std::cout << b << "  " << std::hex << b.to_ullong() << '\n';
    b.flip();
    std::cout << b << "  " << b.to_ullong() << '\n';
    std::bitset<std::numeric_limits<unsigned long long>::digits + 1> q{0};
    try
    {
        (~q).to_ullong(); // lève une exception
    }
    catch (const std::overflow_error& ex)
    {
        std::cout << "ex: " << ex.what() << '\n';
    }
}

Sortie :

0001001000110100010101100111100010011010101111001101111011110000  123456789abcdef0
1110110111001011101010011000011101100101010000110010000100001111  edcba9876543210f
ex: _Base_bitset::_M_do_to_ullong

Voir aussi

renvoie une représentation sous forme de chaîne des données
(fonction membre publique)
renvoie une représentation entière unsigned long des données
(fonction membre publique)