Ієрархія потокових класів

Потокові класи мають досить складну ієрархічну структуру (див. рисунок 1)

 

Рисунок 1

Як видно з рисунку, базисним класом всієї ієрархії є клас ios. Він містить численні константи і методи, спільні для операцій вводу/виводу всіх видів. Клас ios містить також вказівник на клас streambuf, значенням якого є адреса поточного буферу пам’яті. За допомогою буферу відбувається обмін даними (запис або читання). Крім того, ios містить деякі низькорівневі програми для обробки цих даних. У звичайній ситуації нам не потрібно займатися класом streambuf, звертання до якого з інших класів проходить автоматично.

Класи istream та ostream є спадкоємцями ios и призначені для вводу і виводу відповідно. Клас istream містить такі функції як get(), getline(), перезавантажувану операцію видобування >>, клас ostream - функції put(), write() та перезавантажувану операцію вставки <<.

Клас iostream – спадкоємець одночасно класів istream та ostream (це приклад множинного успадковування). Його похідні класи можуть використовуватися при роботі з такими об’єктами, як дискові файли, що можуть бути відкриті одночасно для запису і читання. Три класи – istream_withassign, ostream_withassign, iostream_withassign є спадкоємцями класів istream, ostream, iostream.відповідно. Вони додають до цих класів операцію присвоювання.

 








Дата добавления: 2015-08-26; просмотров: 802;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.