Partager via


basic_stringbuf::seekoff

Tente virtuels protégés de fonctions membres pour modifier les situations actuelles pour les flux de données installations surveillées.

virtual pos_type seekoff(
   off_type _Off,
   ios_base::seekdir _Way,
   ios_base::openmode _Mode = ios_base::in | ios_base::out
);

Paramètres

  • _Off
    Position à rechercher dans _Wayassocié. Pour plus d'informations, consultez basic_stringbuf::off_type.

  • _Way
    Le point de départ pour les opérations décalage. Consultez ios_base::seekdir pour connaitre les valeurs possibles.

  • _Mode
    Spécifie le mode pour la position du pointeur. La valeur par défaut est de vous permettre de modifier les positions en lecture et en écriture. Pour plus d'informations, consultez ios_base::openmode.

Valeur de retour

Retourne la nouvelle position ou une position de flux valide.

Notes

Pour un objet de la classe basic_stringbuf<Elem, Tr, Alloc>, une position du flux consiste purement constituée d'un décalage de flux de données. Le décalage zéro indique le premier élément dans la séquence contrôlée.

La nouvelle position est déterminé comme suit :

  • Si == ios_base::begd'_Way, la nouvelle position est le début du flux et _Off.

  • Si == ios_base::curd'_Way, la nouvelle position correspond à la position du flux actuelle plus _Off.

  • Si == ios_base::endd'_Way, la nouvelle position est la fin du flux de données et _Off.

Si _Mode & ios_base::in est différente de zéro, la fonction modifie la position suivante pour lire dans le tampon d'entrée. Si _Mode & ios_base::out est différente de zéro, la fonction modifie la position suivante pour écrire dans le tampon de sortie. Pour qu'un flux de données affecté, sa mémoire tampon doit exister. Pour qu'une opération positionnante réussisse, la position du flux obtenu doivent être comprises de la séquence contrôlée. Si la fonction affecte les deux positions du flux, _Way doit être ios_base::beg ou ios_base::end et les deux flux de données sont placés au même élément. Dans (ou si aucune des deux positionnelle n'est affectée), l'opération positionnante échoue.

Si la fonction réussit en modifiant l'un ou l'autre ou les deux positions du flux, elle retourne la position du flux obtenu. Sinon, elle échoue et retourne une position du flux valide.

Configuration requise

**En-tête :**sstream <de >

Espace de noms : std

Voir aussi

Référence

basic_stringbuf, classe

iostream, programmation

iostreams, conventions