std::bitset<N>:: operator[]
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member types | ||||
| Member functions | ||||
|
(until C++20)
|
||||
| Element access | ||||
|
bitset::operator[]
|
||||
| Capacity | ||||
| Modifiers | ||||
| Conversions | ||||
|
(C++11)
|
||||
| Non-member functions | ||||
| Helper classes | ||||
|
(C++11)
|
||||
|
bool
operator
[
]
(
std::
size_t
pos
)
const
;
|
(1) | (constexpr desde C++11) |
|
reference operator
[
]
(
std::
size_t
pos
)
;
|
(2) | (constexpr desde C++23) |
Accede al bit en la posición pos .
|
Si pos < size ( ) es false , el comportamiento es indefinido. |
(hasta C++26) |
|
Si pos < size ( ) es false :
|
(desde C++26) |
Contenidos |
Parámetros
| pos | - | posición del bit a devolver |
Valor de retorno
Excepciones
No lanza nada.
Ejemplo
#include <bitset> #include <cstddef> #include <iostream> int main() { std::bitset<8> b1{0b00101010}; // literal binario para 42 for (std::size_t i = 0; i < b1.size(); ++i) std::cout << "b1[" << i << "]: " << b1[i] << '\n'; b1[0] = true; // modifica el primer bit mediante bitset::reference std::cout << "Después de establecer el bit 0, b1 contiene " << b1 << '\n'; }
Salida:
b1[0]: 0 b1[1]: 1 b1[2]: 0 b1[3]: 1 b1[4]: 0 b1[5]: 1 b1[6]: 0 b1[7]: 0 After setting bit 0, b1 holds 00101011
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 11 | C++98 |
1. la descripción faltaba en el estándar de C++
2. solo existía la sobrecarga no constante |
1. descripción añadida
2. añadida la sobrecarga constante |
| LWG 907 | C++98 |
el comportamiento de leer el bit en
pos
era equivalente
al de
test(pos)
, pero
test()
puede lanzar excepciones
|
evita mencionar
test()
|
Véase también
|
accede a un bit específico
(función miembro pública) |