Name

basic_fstream class template — Class template for file input and output streams

Synopsis

template <class charT, class traits=char_traits<charT> >
class basic_fstream : public basic_iostream<charT,traits>
{
public:
  typedef charT char_type;
  typedef typename traits::int_type int_type;
  typedef typename traits::pos_type pos_type;
  typedef typename traits::off_type off_type;
  typedef traits traits_type;
   
  basic_fstream(  );
  explicit basic_fstream(const char* filename,
                         ios_base::openmode mode = ios_base::in|ios_base::out);
   
  basic_filebuf<charT,traits>* rdbuf(  ) const;
  bool is_open(  );
  void open(const char* filename, 
            ios_base::openmode mode = ios_base::in|ios_base::out);
  void close(  );
};

The basic_fstream class template supports reading and writing to and from named files using a basic_filebuf<charT, traits> object. (See <istream> for a description of the base-class template, basic_iostream.) In the following member function descriptions, the file buffer object is assumed to be a private data member with the name buf.

basic_fstream ( )

Constructor initializes the base class with basic_iostream(& buf ) and initializes buf with its default constructor.

explicit basic_fstream (const char* filename, ios_base::openmode mode = ios_base::in | ios_base::out)

Initializes the base class and buf, then calls open(filename, mode). If open returns a null pointer, the constructor calls setstate(failbit).

basic_filebuf<charT, traits>* rdbuf ( ) const

Returns & buf.

bool is_open ( )

Returns rdbuf( )->is_open( ...

Get C++ In a Nutshell now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.