std::basic_spanbuf<CharT,Traits>:: basic_spanbuf
From cppreference.net
<
cpp
|
io
|
basic spanbuf
|
basic_spanbuf
(
)
:
basic_spanbuf
(
std::
ios_base
::
in
|
std::
ios_base
::
out
)
{
}
|
(1) | (depuis C++23) |
|
explicit
basic_spanbuf
(
std::
ios_base
::
openmode
which
)
: basic_spanbuf ( std:: span < CharT > { } , which ) { } |
(2) | (depuis C++23) |
|
explicit
basic_spanbuf
(
std::
span
<
CharT
>
buf,
std::
ios_base
::
openmode
which
=
std:: ios_base :: in | std:: ios_base :: out ) ; |
(3) | (depuis C++23) |
|
basic_spanbuf
(
const
basic_spanbuf
&
)
=
delete
;
|
(4) | (depuis C++23) |
|
basic_spanbuf
(
basic_spanbuf
&&
rhs
)
;
|
(5) | (depuis C++23) |
1)
Constructeur par défaut. Crée un
basic_spanbuf
qui n'a pas de tampon sous-jacent et est ouvert à la fois pour l'entrée et la sortie. Les pointeurs vers la zone de lecture et d'écriture sont définis sur la valeur de pointeur nul.
2)
Identique à
(1)
, sauf que le
basic_spanbuf
est ouvert dans le mode spécifié par
which
.
3)
Crée un
basic_spanbuf
qui gère le tampon sous-jacent référencé par
buf
(ou n'a pas de tampon sous-jacent si
buf
est vide) et est ouvert dans le mode spécifié par
which
. Les pointeurs vers les zones de lecture et d'écriture sont définis comme suit, ou à la valeur de pointeur nul si non mentionné dans le tableau :
|
Bits définis dans le mode d'ouverture
(affectant les pointeurs vers la zone de lecture) |
Valeur de retour après définition | ||
|---|---|---|---|
| eback() | gptr() | egptr() | |
| std:: ios_base :: in | s. data ( ) | s. data ( ) | s. data ( ) + s. size ( ) |
|
Bits définis dans le mode d'ouverture
(affectant les pointeurs vers la zone d'écriture) |
Valeur de retour après définition | ||
| pbase() | pptr() | epptr() | |
| std:: ios_base :: out && ! std:: ios_base :: ate | s. data ( ) | s. data ( ) | s. data ( ) + s. size ( ) |
| std:: ios_base :: out && std:: ios_base :: ate | s. data ( ) | s. data ( ) + s. size ( ) | s. data ( ) + s. size ( ) |
4)
Le constructeur de copie est supprimé.
basic_spanbuf
n'est pas copiable.
5)
Constructeur de déplacement. Construit par déplacement le sous-objet de base
std::basic_streambuf
à partir de celui de
rhs
. Les pointeurs vers les zones de lecture et d'écriture, le mode d'ouverture et le tampon sous-jacent (s'il existe) sont identiques à ceux de
rhs
avant la construction.
L'implémentation détermine si rhs conserve encore le tampon sous-jacent après la construction par déplacement.
L'implémentation détermine si rhs conserve encore le tampon sous-jacent après la construction par déplacement.
Table des matières |
Paramètres
| buf | - | un std::span référençant le tampon sous-jacent | ||||||||||||||||
| rhs | - |
un autre
basic_spanbuf
|
||||||||||||||||
| which | - |
spécifie le mode d'ouverture du flux. C'est un type masque binaire, les constantes suivantes sont définies :
|
Notes
Ces constructeurs sont généralement appelés par les constructeurs de std::basic_ispanstream , std::basic_ospanstream , et std::basic_spanstream .
Exemple
|
Cette section est incomplète
Raison : aucun exemple |
Voir aussi
construit le
basic_ispanstream
(fonction membre publique de
std::basic_ispanstream<CharT,Traits>
)
|
|
construit le
basic_ospanstream
(fonction membre publique de
std::basic_ospanstream<CharT,Traits>
)
|
|
construit le
basic_spanstream
(fonction membre publique de
std::basic_spanstream<CharT,Traits>
)
|