Name

basic_ifstream class template — Class template for file input streams

Synopsis

template <class charT, class traits = char_traits<charT> >
class basic_ifstream : public basic_istream<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_ifstream(  );
  explicit basic_ifstream(const char* s, ios_base::openmode mode = ios_base::in);
   
  basic_filebuf<charT,traits>* rdbuf(  ) const;
  bool is_open(  );
  void open(const char* s, ios_base::openmode mode = ios_base::in);
  void open(const char* s, ios_base::open_mode mode);
  void close(  );
};

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

basic_ifstream ( )

Initializes the base class with basic_istream(& buf ) and initializes buf with its default constructor.

explicit basic_ifstream (const char* filename, ios_base::openmode mode = ios_base::in)

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( ).

void open (const char* filename, ...

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.