basic_iostream

template <class E, class T = char_traits<E> >
    class basic_iostream : public basic_istream<E, T>,
        public  basic_ostream<E, T> {
public:
    explicit basic_iostream(basic_streambuf<E, T> *sb);
    virtual ~basic_iostream();
    };

The template class describes an object that controls insertions, through its base object basic_ostream<E, T>, and extractions, through its base object basic_istream<E, T>. The two objects share a common virtual base object basic_ios<E, T>. They also manage a common stream buffer, with elements of type E, whose character traits are determined by the class T. The constructor initializes its base objects via basic_istream(sb) and basic_ostream(sb).