bitset::bitset
Construit un objet bitset<N> de la classe et initialise les bits à une valeur spécifiée nulle ou quelconque, ou les valeurs obtenues à partir de les caractères d'une chaîne.
bitset( );
bitset(
unsigned long long _Val
);
explicit bitset(
const char * _CStr
);
template<
class CharType,
class Traits,
class Allocator
>
explicit bitset(
const basic_string< CharType, Traits, Allocator >& _Str,
typename basic_string<
CharType, Traits, Allocator >::size_type _Pos = 0
);
template<
class CharType,
class Traits,
class Allocator
>
explicit bitset(
const basic_string< CharType, Traits, Allocator >& _Str,
typename basic_string<
CharType, Traits, Allocator >::size_type _Pos,
typename basic_string<
CharType, Traits, Allocator >::size_type _Count,
CharType _Zero = CharType (’0’),
CharType _One = CharType (’1’)
);
Paramètres
_Val
L'entier non signé de performances de base deux est utilisée pour initialiser les bits du bitset qui est construit._Str
La chaîne des zéros et de celles utilisées pour initialiser les valeurs de bits de bitset._CStr
Chaîne de c avec des zéros et de celles utilisées pour initialiser les valeurs de bits de bitset._Pos
Position du caractère dans la chaîne, en partant de la gauche vers la droite et à partir de zéro, utilisée pour initialiser le premier bit dans le bitset._Count
Le nombre de caractères dans la chaîne utilisée pour fournir les valeurs initiales pour les bits du bitset._Zero
Caractère utilisé pour représenter un zéro. La valeur par défaut est « 0 "._One
Caractère utilisé pour représenter un. La valeur par défaut est « 1 ".
Notes
Trois constructeurs peuvent être utilisés pour construire des obects de la classe bitset<N>:
Le premier constructeur n'accepte aucun paramètre, construit un objet bitset<N> de la classe et initialise les N bits à une valeur par défaut de zéro.
Le deuxième constructeur construit un objet bitset<N> de la classe et initialise les bits à l'aide d'un seul paramètre d'unsigned long long.
Le troisième constructeur construit un objet **bitset<N>**de la classe, en initialisant les N bits les valeurs correspondant aux caractères disponibles dans la chaîne de caractères de c avec des zéros et de celles. Vous appelez le constructeur sans convertir la chaîne en un type chaîne : bitset<5> b5("01011");
Il existe également deux modèles de constructeur fournis :
Le modèle de constructeur construit un objet bitset<N> de la classe et initialise les bits des caractères fournis dans une chaîne des zéros et de celles. Si les caractères de la chaîne sont autres que 0 ou 1, le constructeur lève un objet de la classe argument non valide. Si la position spécifiée (_Pos) dépasse la longueur de la chaîne, le constructeur lève un objet de la classe out_of_range. Le constructeur identifie les bits à la position j dans le bitset pour lequel le caractère de la chaîne à la position _Pos + j est 1. Par défaut, _Pos est 0.
Le deuxième modèle de constructeur est similaire au premier, mais comprend un paramètre supplémentaire (_Count) utilisé pour spécifier le nombre de bits pour initialiser. Il est également deux paramètres facultatifs, _Zero et _One, qui indiquent quel caractère dans _Str doit être interprète comme signifiant un bit 0 et 1 bits, respectivement.
Exemple
// bitset_bitset.cpp
// compile with: /EHsc
#include <bitset>
#include <iostream>
int main( )
{
// Using the default constructor
using namespace std;
bitset<2> b0;
cout << "The set of bits in bitset<2> b0 is: ( "
<< b0 << " )." << endl;
// Using the second member function
bitset<5> b1 ( 6 );
cout << "The set of bits in bitset<5> b1( 6 ) is: ( "
<< b1 << " )." << endl;
// The template parameter N can be an expresssion
bitset< 2 * sizeof ( int ) > b2;
cout << "The set of bits in bitset<2 * sizeof ( int ) > b2 is: ( "
<< b2 << " )." << endl;
// The base two representation will be truncated
// if its length exceeds the size of the bitset
bitset<3> b3 ( 6 );
cout << "The set of bits in bitset<3> b3( 6 ) is ( "
<< b3 << " )." << endl;
// Using a c-style string to initialize the bitset
bitset<7> b3andahalf ( "1001001" );
cout << "The set of bits in bitset<7> b3andahalf ( \"1001001\" )"
<< " is ( " << b3andahalf << " )." << endl;
// Using the fifth member function with the first parameter
string bitval4 ( "10011" );
bitset<5> b4 ( bitval4 );
cout << "The set of bits in bitset<5> b4( bitval4 ) is ( "
<< b4 << " )." << endl;
// Only part of the string may be used for initialization
// Starting at position 3 for a length of 6 (100110)
string bitval5 ("11110011011");
bitset<6> b5 ( bitval5, 3, 6 );
cout << "The set of bits in bitset<11> b5( bitval, 3, 6 ) is ( "
<< b5 << " )." << endl;
// The bits not initialized with part of the string
// will default to zero
bitset<11> b6 ( bitval5, 3, 5 );
cout << "The set of bits in bitset<11> b6( bitval5, 3, 5 ) is ( "
<< b6 << " )." << endl;
// Starting at position 2 and continue to the end of the string
bitset<9> b7 ( bitval5, 2 );
cout << "The set of bits in bitset<9> b7( bitval, 2 ) is ( "
<< b7 << " )." << endl;
}
Configuration requise
**En-tête :**bitset <de >
Espace de noms : std