Bibliothèque C ++ Fstream - Fonction rdbuf

La description

Il renvoie un pointeur vers l'objet filebuf interne.

Déclaration

Voici la déclaration pour fstream :: rduf.

C ++ 11

filebuf* rdbuf() const;

Valeur de retour

Il renvoie un pointeur vers l'objet filebuf interne.

Des exceptions

Strong guarantee - si une exception est levée, il n'y a aucun changement dans le tampon de flux.

Courses de données

  • Il accède à l'objet de flux.

  • L'accès simultané au même objet de flux peut provoquer des courses de données.

Exemple

Dans l'exemple ci-dessous, explique la fonction fstream rdbuf.

#include <fstream>
#include <cstdio>

int main () {
   std::fstream src,dest;
   src.open ("test.txt");
   dest.open ("copy.txt");

   std::filebuf* inbuf  = src.rdbuf();
   std::filebuf* outbuf = dest.rdbuf();

   char c = inbuf->sbumpc();
   while (c != EOF) {
      outbuf->sputc (c);
      c = inbuf->sbumpc();
   }

   dest.close();
   src.close();

   return 0;
}