std:: vector<bool, Alloc>:: reference
|
class
reference
;
|
||
Las especializaciones de
std::vector
<
bool
, Alloc
>
definen
std::vector
<
bool
, Alloc
>
::
reference
como una clase anidada de acceso público.
std::vector
<
bool
, Alloc
>
::
reference
actúa como proxy del comportamiento de las referencias a un bit individual en
std::vector
<
bool
, Alloc
>
.
El uso principal de
std::vector
<
bool
, Alloc
>
::
reference
es proporcionar un valor asignable que puede ser devuelto desde
operator
[
]
.
Cualquier lectura o escritura en un vector que ocurra a través de una
std::vector
<
bool
, Alloc
>
::
reference
potencialmente lee o escribe en todo el vector subyacente.
Funciones miembro
|
(constructor)
|
construye la referencia
(función miembro pública) |
|
(destructor)
|
destruye la referencia
(función miembro pública) |
|
operator=
|
asigna un valor al bit referenciado
(función miembro pública) |
|
operator bool
|
devuelve el bit referenciado
(función miembro pública) |
|
flip
|
invierte el bit referenciado
(función miembro pública) |
std::vector<bool, Alloc>::reference:: reference
|
reference
(
const
reference
&
)
=
default
;
|
(desde C++11)
(constexpr desde C++20) |
|
Construye la referencia a partir de otra referencia. El constructor de copia se declara implícitamente. (hasta C++11)
Otros constructores solo pueden ser accedidos por
std::vector
<
bool
, Alloc
>
.
std::vector<bool, Alloc>::reference:: ~reference
|
~reference
(
)
;
|
(constexpr desde C++20) | |
Destruye la referencia.
std::vector<bool, Alloc>::reference:: operator=
|
reference
&
operator
=
(
bool
x
)
;
|
(1) |
(noexcept desde C++11)
(constexpr desde C++20) |
|
constexpr
const
reference
&
operator
=
(
bool
x
)
const
noexcept
;
|
(2) | (desde C++23) |
|
reference
&
operator
=
(
const
reference
&
x
)
;
|
(3) |
(noexcept desde C++11)
(constexpr desde C++20) |
Asigna un valor al bit referenciado.
|
El operador const
operator
=
permite que
|
(desde C++23) |
Parámetros
| x | - | valor a asignar |
Valor de retorno
* this
std::vector<bool, Alloc>::reference:: operator bool
|
operator
bool
(
)
const
;
|
(noexcept desde C++11)
(constexpr desde C++20) |
|
Devuelve el valor del bit referenciado.
Valor de retorno
El bit referenciado.
std::vector<bool, Alloc>::reference:: flip
|
void
flip
(
)
;
|
(noexcept desde C++11)
(constexpr desde C++20) |
|
Invierte el bit referenciado.
Clases auxiliares
std:: formatter <std::vector<bool, Alloc>::reference>
|
template
<
class
T,
class
CharT
>
requires
/*is-vector-bool-reference*/
<
T
>
|
(desde C++23) | |
Especializa
std::formatter
para
std::vector
<
bool
, Alloc
>
::
reference
. La especialización utiliza
std::
formatter
<
bool
, CharT
>
como su formateador subyacente (denotado como
underlying_
) donde el bit referenciado se convierte a
bool
para ser formateado.
La constante solo de exposición
/*is-vector-bool-reference*/
<
T
>
es
true
si y solo si
T
denota el tipo
std::vector
<
bool
, Alloc
>
::
reference
para algún tipo
Alloc
y
std::vector
<
bool
, Alloc
>
no es una
especialización definida por el programa
.
Funciones miembro
|
template
<
class
ParseContext
>
constexpr ParseContext :: iterator parse ( ParseContext & ctx ) ; |
(1) | (desde C++23) |
|
template
<
class
FormatContext
>
FormatContext :: iterator format ( const T & r, FormatContext & ctx ) const ; |
(2) | (desde C++23) |
underlying_
.
parse
(
ctx
)
;
.
underlying_
.
format
(
r, ctx
)
;
.
Ejemplo
|
Esta sección está incompleta
Motivo: sin ejemplo |
Véase también
|
acceder al elemento especificado
(función miembro pública de
std::vector<T,Allocator>
)
|
|
|
[static]
|
intercambia dos
std::vector<bool>::
reference
s
(función miembro estática pública) |
Enlaces externos
"Effective Modern C++" por Scott Meyers (2015), Capítulo 2, Elemento 6: "Utilice la expresión de inicialización de tipo explícito cuando
auto
deduce tipos no deseados." (p.43-46) — describe un posible uso incorrecto de la clase proxy
std::vector<bool>::reference
).
|