C ++ streambuf - Pubseekoff

La description

Il est utilisé pour définir le pointeur de position interne sur la position relative et appelle le membre virtuel protégé seekoff avec les mêmes arguments off, way et which.

Déclaration

Voici la déclaration pour std :: basic_streambuf :: pubseekoff.

pos_type pubseekoff (off_type off, ios_base::seekdir way,
                     ios_base::openmode which = ios_base::in | ios_base::out);

Paramètres

off - C'est une valeur de décalage, par rapport au paramètre way.

Valeur de retour

Il renvoie toujours la nouvelle valeur de position du pointeur de position modifié.

Exceptions

Basic guarantee - si une exception est levée, le tampon de flux est dans un état valide.

Courses de données

Il modifie l'objet de tampon de flux.

Exemple

L'exemple ci-dessous explique à propos de std :: basic_streambuf :: pubseekoff.

#include <iostream>     
#include <fstream>      

int main () {
   std::fstream filestr ("sample.txt");
   if (filestr) {
      std::streambuf* pbuf = filestr.rdbuf();
      long size = pbuf->pubseekoff(0,filestr.end);
      std::cout << "The file size is " << size << " characters.\n";
      filestr.close();
   }
   return 0;
}