Apache C++ Standard Library Reference Guide

## <iosfwd>

Library: Input/output

    Header

- Local Index
- Summary
- Synopsis
- See Also
- Standards Conformance

### Local Index

No Entries

### Summary

The header `<iosfwd>` is part of the Input/output library of the C++ Standard Library. It declares all essential iostream class templates and defines aliases for specializations of these templates on types `char` and `wchar_t`.

### Synopsis

    #include <iosfwd>

    namespace std {
      // forward declare the traits class
      template<class charT> struct char_traits;

      // forward declare the positioning class
      template<class stateT> class fpos;

      // forward declare the state class
      class mbstate_t;

      // forward declare the allocator class
      template<class T> class allocator;

      // forward declare the iostreams class templates
      template<class charT,class traits=char_traits<charT> >
      class basic_ios;

      template<class charT,class traits=char_traits<charT> >
      class basic_streambuf;

      template<class charT,class traits=char_traits<charT> >
      class basic_istream;

      template<class charT,class traits=char_traits<charT> >
      class basic_ostream;

      template<class charT,class traits=char_traits<charT>,
               class Allocator = allocator<charT> >
      class basic_stringbuf;

      template<class charT,class traits=char_traits<charT>,
               class Allocator = allocator<charT> >
      class basic_istringstream;

      template<class charT,class traits=char_traits<charT>,
               class Allocator = allocator<charT> >
      class basic_ostringstream;

      template<class charT,class traits=char_traits<charT> >
      class basic_filebuf;

      template<class charT,class traits=char_traits<charT> >
      class basic_ifstream;

      template<class charT,class traits=char_traits<charT> >
      class basic_ofstream;

      template<class charT,class traits=char_traits<charT> >
      class ostreambuf_iterator;

      template<class charT,class traits=char_traits<charT> >
      class istreambuf_iterator;

      template<class charT,class traits=char_traits<charT> >
      class basic_iostream;

      template<class charT,class traits=char_traits<charT>,
               class Allocator = allocator<charT> >
      class basic_stringstream;

      template<class charT,class traits=char_traits<charT> >
      class basic_fstream;

      // specializations on tiny characters
      typedef basic_ios<char>              ios;
      typedef basic_streambuf<char>        streambuf;
      typedef basic_istream<char>          istream;
      typedef basic_ostream<char>          ostream;
      typedef basic_stringbuf<char>        stringbuf;
      typedef basic_istringstream<char>    istringstream;
      typedef basic_ostringstream<char>    ostringstream;
      typedef basic_filebuf<char>          filebuf;
      typedef basic_ifstream<char>         ifstream;
      typedef basic_ofstream<char>         ofstream;
      typedef basic_iostream<char>         iostream;
      typedef basic_stringstream<char>     stringstream;
      typedef basic_fstream<char>          fstream;

      // specializations on wide characters
      typedef basic_ios<wchar_t>           wios;
      typedef basic_streambuf<wchar_t>     wstreambuf;
      typedef basic_istream<wchar_t>       wistream;
      typedef basic_ostream<wchar_t>       wostream;
      typedef basic_stringbuf<wchar_t>     wstringbuf;
      typedef basic_istringstream<wchar_t> wistringstream;
      typedef basic_ostringstream<wchar_t> wostringstream;
      typedef basic_filebuf<wchar_t>       wfilebuf;
      typedef basic_ifstream<wchar_t>      wifstream;
      typedef basic_ofstream<wchar_t>      wofstream;
      typedef basic_iostream<wchar_t>      wiostream;
      typedef basic_stringstream<wchar_t>  wstringstream;
      typedef basic_fstream<wchar_t>       wfstream;

      // positional types used by char_traits
      typedef fpos<mbstate_t> streampos;
      typedef fpos<mbstate_t> wstreampos;

      typedef long streamoff;
      typedef long wstreamoff;
    }

### See Also

fpos, char_traits, basic_ios, basic_streambuf, basic_istream, basic_ostream, basic_iostream, basic_stringbuf, basic_istringstream, basic_ostringstream, basic_stringstream, basic_filebuf, basic_ifstream, basic_ofstream, basic_fstream, istreambuf_iterator, ostreambuf_iterator

### Standards Conformance

ISO/IEC 14882:1998 -- International Standard for Information Systems --Programming Language C++, Section 27.2