operator<<,>> (std::bitset)
|
Definido en el encabezado
<bitset>
|
||
|
template
<
class
CharT,
class
Traits,
std::
size_t
N
>
std::
basic_ostream
<
CharT, Traits
>
&
|
(1) | |
|
template
<
class
CharT,
class
Traits,
std::
size_t
N
>
std::
basic_istream
<
CharT, Traits
>
&
|
(2) | |
Inserta o extrae un bitset de un flujo de caracteres.
Los caracteres a usar para unos y ceros se obtienen de la localidad actualmente imbucida llamando a std:: use_facet < std:: ctype < CharT >> ( os. getloc ( ) ) . widen ( ) con '1' y '0' como argumentos.
Los caracteres se extraen hasta que:
- N caracteres han sido leídos,
- ocurre fin de archivo en is , o
- el siguiente carácter no es ni is. widen ( '0' ) ni is. widen ( '1' ) .
Contenidos |
Parámetros
| os | - | el flujo de caracteres en el que escribir |
| is | - | el flujo de caracteres del que leer |
| x | - | el bitset que se va a leer o escribir |
Valor de retorno
Ejemplo
#include <bitset> #include <iostream> #include <sstream> int main() { std::string bit_string = "001101"; std::istringstream bit_stream(bit_string); std::bitset<3> b1; bit_stream >> b1; // lee "001", el stream aún contiene "101" std::cout << b1 << '\n'; std::bitset<8> b2; bit_stream >> b2; // lee "101", llena el conjunto de 8 bits como "00000101" std::cout << b2 << '\n'; }
Salida:
001 00000101
Informes de defectos
Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares publicados anteriormente de C++.
| DR | Aplicado a | Comportamiento publicado | Comportamiento correcto |
|---|---|---|---|
| LWG 303 | C++98 |
se extraían caracteres de un solo byte de
is , pero
CharT
puede tener múltiples bytes
|
extrae
CharT
y lo compara
con '0' y '1' ensanchados |
| LWG 396 | C++98 | el contenido escrito por operator << era independiente de la configuración regional | escribe '0' s y '1' s ensanchados |
| LWG 3199 | C++98 |
extraer un
std::bitset<0>
siempre establecía
failbit
|
dicha extracción nunca establece
failbit
|
Véase también
|
realiza desplazamiento binario a la izquierda y desplazamiento a la derecha
(función miembro pública) |