std:: vector<bool, Alloc>:: reference
|
class
reference
;
|
||
Les spécialisations
std::vector
<
bool
, Alloc
>
définissent
std::vector
<
bool
, Alloc
>
::
reference
comme une classe imbriquée accessible publiquement.
std::vector
<
bool
, Alloc
>
::
reference
simule le comportement des références vers un bit unique dans
std::vector
<
bool
, Alloc
>
.
L'utilisation principale de
std::vector
<
bool
, Alloc
>
::
reference
est de fournir une valeur assignable qui peut être retournée par
operator
[
]
.
Toute lecture ou écriture dans un vecteur qui se produit via une
std::vector
<
bool
, Alloc
>
::
reference
peut potentiellement lire ou écrire dans l'intégralité du vecteur sous-jacent.
Fonctions membres
|
(constructor)
|
construit la référence
(fonction membre publique) |
|
(destructor)
|
détruit la référence
(fonction membre publique) |
|
operator=
|
assigne une valeur au bit référencé
(fonction membre publique) |
|
operator bool
|
retourne le bit référencé
(fonction membre publique) |
|
flip
|
inverse le bit référencé
(fonction membre publique) |
std::vector<bool, Alloc>::reference:: reference
|
reference
(
const
reference
&
)
=
default
;
|
(depuis C++11)
(constexpr depuis C++20) |
|
Construit la référence à partir d'une autre référence. Le constructeur de copie est implicitement déclaré. (jusqu'à C++11)
Les autres constructeurs ne peuvent être accédés que par
std::vector
<
bool
, Alloc
>
.
std::vector<bool, Alloc>::reference:: ~reference
|
~reference
(
)
;
|
(constexpr depuis C++20) | |
Détruit la référence.
std::vector<bool, Alloc>::reference:: operator=
|
reference
&
operator
=
(
bool
x
)
;
|
(1) |
(noexcept depuis C++11)
(constexpr depuis C++20) |
|
constexpr
const
reference
&
operator
=
(
bool
x
)
const
noexcept
;
|
(2) | (depuis C++23) |
|
reference
&
operator
=
(
const
reference
&
x
)
;
|
(3) |
(noexcept depuis C++11)
(constexpr depuis C++20) |
Assigne une valeur au bit référencé.
|
L'opérateur const
operator
=
permet à
|
(depuis C++23) |
Paramètres
| x | - | valeur à assigner |
Valeur de retour
* this
std::vector<bool, Alloc>::reference:: operator bool
|
operator
bool
(
)
const
;
|
(noexcept depuis C++11)
(constexpr depuis C++20) |
|
Retourne la valeur du bit référencé.
Valeur de retour
Le bit référencé.
std::vector<bool, Alloc>::reference:: flip
|
void
flip
(
)
;
|
(noexcept depuis C++11)
(constexpr depuis C++20) |
|
Inverse le bit référencé.
Classes d'assistance
std:: formatter <std::vector<bool, Alloc>::reference>
|
template
<
class
T,
class
CharT
>
requires
/*is-vector-bool-reference*/
<
T
>
|
(depuis C++23) | |
Spécialise le
std::formatter
pour
std::vector
<
bool
, Alloc
>
::
reference
. La spécialisation utilise
std::
formatter
<
bool
, CharT
>
comme formateur sous-jacent (noté
underlying_
) où le bit référencé est converti en
bool
pour être formaté.
La constante d'exposition uniquement
/*is-vector-bool-reference*/
<
T
>
est
true
si et seulement si
T
dénote le type
std::vector
<
bool
, Alloc
>
::
reference
pour un certain type
Alloc
et
std::vector
<
bool
, Alloc
>
n'est pas une
spécialisation définie par le programme
.
Fonctions membres
|
template
<
class
ParseContext
>
constexpr ParseContext :: iterator parse ( ParseContext & ctx ) ; |
(1) | (depuis C++23) |
|
template
<
class
FormatContext
>
FormatContext :: iterator format ( const T & r, FormatContext & ctx ) const ; |
(2) | (depuis C++23) |
underlying_
.
parse
(
ctx
)
;
.
underlying_
.
format
(
r, ctx
)
;
.
Exemple
|
Cette section est incomplète
Raison : aucun exemple |
Voir aussi
|
accéder à l'élément spécifié
(fonction membre publique de
std::vector<T,Allocator>
)
|
|
|
[static]
|
échange deux
std::vector<bool>::
reference
s
(fonction membre publique statique) |
Liens externes
"Effective Modern C++" par Scott Meyers (2015), Chapitre 2, Item 6 : "Utilisez l'idiome d'initialiseur explicitement typé lorsque
auto
déduit des types non souhaités." (p.43-46) — décrit un usage potentiellement incorrect de la classe proxy
std::vector<bool>::reference
).
|