Потоковый класс ios

Класс ios (и следовательно, производные от него классы) содержит указатель на streambuf.

Классы семейства ios предоставляют программный интерфейс и обеспечивают необходимое форматирование при вводе-выводе обрабатываемых данных, а непосредственную обработку данных выполняют классы семейства streambuf, управляющие обменом данными между буфером потока и конечным устройством.

Например, класс ifstream является производным от istream и fstreambase, а класс istrstream является производным от istream и strstreambase. Поскольку имеет место множественное наследование, данная схема показывает не просто иерархию классов. При множественном наследовании один класс может наследовать от нескольких базовых классов. Это означает, например, что все элементы (данные и функции) iostream, istream, ostream, fstreambase и ios являются частью объектов класса fstream. Все классы в сети ios используют streambuf (либо filebuf или strstreambuf, которые представляют собой специальные случаи streambuf) в качестве источника и/или приемника.

Стандартные потоки cin, cout и cerr

Стандартным потокам языка С stdin, stdout и stderr, объявленным в файле STDIO.H, в С++ соответствуют объекты-потоки cin, cout, cerr и clog, подключаемые посредством файла IOSTREAM.H.

Cin объект класса istream, связанный со стандартным потоком ввода

Cout объект класса ostream, связанный со стандартным потоком вывода

Cerr объект класса ostream, не поддерживающий буферизацию и связанный со стандартным потоком ошибок

Clog объект класса ostream, поддерживающий буферизацию и связанный со стандартным потоком ошибок


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: