Namespaces
Variants

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

From cppreference.net
std::basic_spanbuf
Public member functions
Protected member functions
basic_spanbuf::seekoff
(C++23)
Non-member functions
protected :

pos_type seekoff ( off_type off, std:: ios_base :: seekdir dir,
std:: ios_base :: openmode which =

std:: ios_base :: in | std:: ios_base :: out ) override ;
(depuis C++23)

Repositionne le pointeur suivant de la zone de lecture et/ou d'écriture, si possible, à la position qui correspond exactement off caractères depuis le début, la fin, ou la position actuelle de la zone de lecture et/ou d'écriture du tampon.

Soit n le nombre d'éléments CharT dans le tampon sous-jacent, ou 0 lorsqu'il n'y a pas de tampon sous-jacent, cette fonction échoue si

  • le pointeur suivant vers la zone de get et/ou put à repositionner est nul et la valeur calculée newoff (voir ci-dessous) n'est pas zéro, ce qui peut se produire s'il n'y a pas de tampon sous-jacent, ou si * this n'est pas ouvert dans le mode requis par which , ou
  • dir est std::ios_base::cur et à la fois std::ios_base::in et std::ios_base::out sont définis dans which , ou
  • la valeur calculée newoff n'est pas représentable dans off_type , est inférieure à zéro, ou supérieure à n .

newoff est calculé comme suit :

Cette fonction repositionne le pointeur suivant des zones de lecture et/ou d'écriture vers pbuf + newoff en cas de succès si std::ios_base::in et/ou std::ios_base::out sont respectivement définis dans which , où pbuf est le pointeur vers le début du tampon sous-jacent, ou la valeur de pointeur nul s'il n'y a pas de tampon sous-jacent.

Table des matières

Paramètres

off - position relative pour définir le(s) pointeur(s) suivant(s)
dir - définit la position de base à laquelle appliquer le décalage relatif. Il peut s'agir d'une des constantes suivantes :
Constante Explication
beg le début d'un flux
end la fin d'un flux
cur la position actuelle de l'indicateur de position du flux
which - définit si la séquence d'entrée, la séquence de sortie, ou les deux sont affectées. Il peut s'agir d'une ou d'une combinaison des constantes suivantes :
Constante Explication
in affecte la séquence d'entrée
out affecte la séquence de sortie

Valeur de retour

pos_type ( newoff ) en cas de succès, pos_type ( off_type ( - 1 ) ) en cas d'échec.

Exemple

Voir aussi

[virtual]
repositionne le pointeur suivant dans la séquence d'entrée, la séquence de sortie, ou les deux, en utilisant l'adressage relatif
(fonction membre protégée virtuelle de std::basic_stringbuf<CharT,Traits,Allocator> )
[virtual]
repositionne le pointeur suivant dans la séquence d'entrée, la séquence de sortie, ou les deux, en utilisant l'adressage relatif
(fonction membre protégée virtuelle de std::strstreambuf )