Namespaces
Variants

std::basic_spanbuf<CharT,Traits>:: basic_spanbuf

From cppreference.net
std::basic_spanbuf
Public member functions
basic_spanbuf::basic_spanbuf
(C++23)
Protected member functions
Non-member functions
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)
(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.

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 :
Constante Explication
app se positionner en fin de flux avant chaque écriture
binary ouvrir en mode binaire
in ouvrir en lecture
out ouvrir en écriture
trunc vider le contenu du flux à l'ouverture
ate se positionner en fin de flux immédiatement après l'ouverture
noreplace (C++23) ouvrir en mode exclusif

Notes

Ces constructeurs sont généralement appelés par les constructeurs de std::basic_ispanstream , std::basic_ospanstream , et std::basic_spanstream .

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> )