Элементы данных
Pic | Указывает на строку шаблона, задающую формат
данных в соответствующем редактируемом управляющем элементе. |
Элементы данных
Max | Максимально допустимое для редактируемого управляющего элемента значение. |
Min | Минимально допустимое значение. |
Элементы данных
enum TEllipse | Определяет константу Ellipse, используемую тото, чтобы отличить конструктор эллипса от
конструктора копирования прямоугольника. |
Элементы данных
Dispatcher | Абстрактный тип диспетчера, указывающий на одну из функций диспетчера. |
Id | Содержит ресурс меню или оперативной клавиши
для функции реакции на сообщения. |
Msg | Содержит идентификатор сообщения. |
NotifyCode | Содержит код уведомления для записи таблицы
реакции (код кнопки, комбинированного элемента, редактируемого управляющего элемента или блока списка). |
Pmf | Указывает на обработчик сообщения или функцию-элемент. |
T | Тип общей функции-элемента, отвечающей на уведомляющие сообщения. |
Элементы данных
LineMagnitude | Это число единиц диапазона для прокрутки на
небольшую величину при щелчке "мышью" на стрелке полосы прокрутки. |
PageMagnitude | Число единиц диапазона для прокрутки полосы
при большом перемещении (щелчок "мышью" на областях полосы прокрутки). |
Элементы данных
HighValue | Содержит максимальное значение позиции скользящего маркера полосы прокрутки. |
LowValue | Содержит минимальное значение позиции скользящего маркера полосы прокрутки. |
Position | Содержит позицию скользящего маркера. |
Элементы данных
AutoMode | В случае значения True активизируется автоматическая прокрутка. |
AutoOrg | В случае True прокрутка смещается относительно
начала. |
HasHScrollBar | В случае значения True элемент прокрутки имеет
горизонтальную прокрутку. |
HasVScrollBar | В случае значения True элемент прокрутки имеет
вертикальную прокрутку. |
TrackMode | Имеет значение True при активизации слежения. |
Window | Указывает на окно, с клиентной областью которого должен работать элемент прокрутки. |
XLine, YLine | Задает число логических единиц устройства на
строку для прокрутки прямоугольника в горизонтальном и вертикальном направлениях. |
XPage, YPage | Задает число логических единиц устройства на
страницу для прокрутки прямоугольника в горизонтальном и вертикальном направлениях. |
XPos,YPos | Задает текущую позицию прямоугольника в горизонтальных и вертикальных единицах прокрутки?. |
XRange,YRange | Задает число горизонтальных и вертикальных
единиц прокрутки. |
XUnit,YUnit | Задает величину прокрутки прямоугольника в горизонтальном и вертикальном направлениях. |
Элементы данных
BkColor | Значение фонового цвета скользящего маркера. |
CaretRect | Позиция прямоугольника активного окна. |
Max | Максимальное значение позиции скользящего маркера. |
Min | Минимальное значение позиции скользящего маркера. |
MouseOffset | Используется при перемещении "мыши" вниз и
движении маркера. |
Pos | Указывает, где позиционирован скользящий маркер. |
Range | Содержит разницу между максимальным и минимальным диапазоном скользящего маркера. |
SlideDC | Используется при перемещении "мыши" вниз и
движении маркера. |
Sliding | Имеет значение True при перемещении маркера. |
SlotThick | Указывает толщину области перемещения маркера. |
Snap | True, если действует ограничение позиции. |
ThumbRect | Содержит ограничивающий прямоугольник скользящего маркера. |
ThumbResId | Битовый массив для скользящего маркера. |
ThumbRgn | Ссылка на область, которая определяет форму
скользящего маркера. |
TicGap | Задает интервал между рисками в элементах изображения. |
Элементы данных
TextLen | Содержит размер текстового буфера для статических управляющих элементов. |
Элементы данных
operator= | Устанавливает код состояния и отбрасывает
исключительную ситуацию TXCompatibility. |
operator | Возвращает код состояния. |
Элементы данных
TModeIndicator enum | Перечисляет программные режимы. По умолчанию
они упорядочиваются в строке состояния горизонтально слева направо. |
BorserStyle | Один из перечислимых стилей обрамления индикаторов режима в строке состояния. |
ModeIndicators | Это битовое поле указывает, какие индикаторы
режима создаются в строке состояния. |
NumModeIndicators | Задает число индикаторов режима (от 1 до 5). |
Spacing | Задает интервал между индикаторами в строке
состояния. |
Элементы данных
OpenMode | Содержит флаги режимов, используемых при открытии потоков документов. |
StreamName | Содержит имя потока, использованного для открытия документов. |
Doc | Содержит документ, являющийся владельцем потока. |
NextStream | Указывает на следующий поток в списке открытых
потоков. |
Элементы данных
Strings | Указывает на набор строк, содержащих все допустимые строки (если задается NULL, то разрешаются все строки). |
Элементы данных
TAlign | Перечисляет атрибуты выравнивания текста. |
Align | Атрибут выравнивания текста. |
NumChars | Содержит число символов текста. |
TextLen | Содержит длину текста. |
Элементы данных
Border | Тонкая рамка для разделителей. |
CaptionHeight | Высота строки заголовка. |
CaptionFont | Шрифт, используемый для текста в тонкой строке
заголовка. |
CloseBox | В случае значения True окно будет закрываться
при щелчке "мышью" на блоке закрытия. |
DownHit | Адрес точки нажатия кнопки "мыши" или перемещения курсора. |
Frame | Фактические размеры строки заголовка. |
isPressed | Имеет значение True при нажатии кнопки "мыши". |
TCEnabled | Равно True, если выводится тонкая строка заголовка. |
WaitingForSysCmd | Равно True, если TTinyCaption может принять
системные сообщения. |
Элементы данных
NumColumns | Содержит число столбцов в полосе инструментальных средств. |
NumRows | Число строк. |
Элементы данных
Options | Битовый массив, используемый для управления
параметрами производных классов. По умолчанию все биты нулевые. |
Элементы данных
Property enum | Значения характеристик, определенные для TView
и доступные в производных классах. |
Tag | Содержит указатель на определяемые приложением
данные. |
Doc | Содержит текущий документ. |
NotOK | Устанавливает отображаемый элемент в недопустимое состояние (IsOK будет возвращать 0). |
Элементы данных
Attr | Содержит структуру TWindowAttr с атрибутами
создания окна (стиль окна, расширенный стиль, позиция, размер, идентификатор меню, идентификатор дочернего окна и таблицу оперативных клавиш меню). |
DefaultProc | Содержит адрес используемой по умолчанию оконной процедуры, которая вызывается для обработки сообщений Window, не обрабатываемых приложением. |
HWindow | Содержит описатель соответствующего окна Windows. |
Parent | Указывает на интерфейсный объект, который используется в качестве родительского окна. |
Scroller | Указывает на интерфейсный объект - элемент
прокрутки окна. |
Status | Сигнализирует об ошибке при инициализации интерфейсного объекта. |
Title | Указывает на заголовок окна. |
CursorInstance | Содержит идентификатор библиотеки для заданного курсора. |
CursorResId | Содержит идентификатор ресурса курсора для заданного курсора. |
hAccel | Содержит описатель текущей таблицы акселераторов Windows. |
hCursor | Содержит описатель курсора окна. |
TransferBuffer | Указывает на буфер передачи данных в TWindow и
из него. |
Элементы данных
Window | Указывает на объект окна, связанный с данной
исключительной ситуацией. |
Элементы данных
AccelTable | Содержит идентификатор ресурса для таблицы акселераторов окна. |
ExStyle | Содержит расширенные значения стиля окна. |
Id | Содержит идентификатор дочернего окна или
идентификатор ресурса для управляющего элемента диалогового окна. |
Menu | Содержит идентификатор ресурса, представляющий
собой имя меню окна. |
Param | Содержит значение, передаваемое окну при его
создании. |
Style | Содержит значения, определяющие стиль, форму и
размер окна. |
X,Y,W,H | Содержат координаты верхнего левого угла окна,
а также его ширину и высоту. |
Элементы данных
Wnd | Содержит описатель окна, владельцем которого
является данный DC. |
Элементы изображения и палитры
Графический экран представляет собой массив элементов изображения. Каждый элемент изображения соответствует одной (цветной)
точке на экране. Значение элемента изображения не задает точный
цвет этой точки напрямую; на самом деле это некоторый индекс таблицы цветов, называемой палитрой. Каждый элемент палитры, соответствующий данному значению элемента изображения, содержит точную информацию о цвете, которым будет отображен этот элемент
изображения.
Такая схема косвенных обращений имеет множество следствий.
Хотя аппаратное обеспечение может позволять отображение множества
цветов, одновременно на экране может находиться только некоторое
их подмножество. Количество одновременно находящихся на экране
цветов равно числу элементов палитры (размеру палитры). Например,
EGA позволяет наличие 64 цветов, но лишь 16 из них может находиться на экране сразу; таким образом, размер палитры EGA равен 16.
Размер палитры определяет диапазон значений, которые может
принимать элемент изображения, от 0 до (размер-1). Функция
getmaxcolor возвращает максимальное допустимое значение элемента
изображения (размер-1) для текущего графического драйвера и режима.
При обсуждении графических функций Borland C++ мы часто используем термин "цвет", например текущий цвет вычерчивания, цвет
заполнения и цвет элемента изображения. Фактически цветом мы
здесь называем значение элемента изображения: это некоторый индекс в палитре. Только палитра реально определяет фактический
цвет на экране. Манипулируя палитрой, вы можете изменять фактические цвета, выводимые на дисплей, даже хотя значения элементов
изображения (цвета вычерчивания, заполнения и т.д.) могут не изменяться.
Элементы классов
Вообще, в классах могут объявляться элементы типа public,
private и protected (общие, приватные, и защищенные - детальные разъяснения смотрите в следующем разделе). Эти элементы могут быть другими объектами из других классов и функциями элементами:
Ключевое слово сlass
Имя класса (как правило, осмысленное)
v v
class shape {
private: // Ключевое слово private
Элемент > int init_flag; // Приватный элемент
данных protected: // Ключевое слово protected
Элементы > double xo, yo; // Защищенные элементы
данных public: // Ключевое слово public
Функции -> void init(double x, double y); // Общие
элементы -> double area(void); // элементы
};
Имя класса shape можно использовать точно так же, как и имя
обычного типа данных в Cи. Например, можно сделать следующее объявле-
ние для массивов:
shape Times[10]; // объявление массива shape из 10 элементов
Этот параметр предназначен для программ,
По умолчанию в Borland C++ устанавливается параметр генерации кода "эмуляция" (параметр компилятора режима командной строки
-f). Этот параметр предназначен для программ, которые могут вообще не иметь операций с плавающей точкой, а также для программ,
которые должны выполняться и на машинах, на которых сопроцессор
80х87 не установлен.
В случае параметра эмуляции компилятор генерирует код, как
если бы сопроцессор присутствовал, но при компоновке подключает
библиотеку эмуляции операций с плавающей точкой (EMU.LIB). При
выполнении такой программы сопроцессор 80х87, если он установлен,
будет использоваться. Если же во время выполнения процессора не
окажется, то программа будет использовать специальное программное
обеспечение, эмулирующее процессор 80х87.
Этапы инсталляции
Программа инсталляции Borland С++ устанавливает сам продукт
С++ (IDE, инструментальные средства режима командной строки, ObjectWindows, Turbo Debugger), а также Win32s (что позволяет выполнять 32-разрядные программы в 16-разрядной Windows). Программа
инсталляции работает под Windows, Win32s и Windows NT (однако под
Windows NT работают не все программы).
Перед инсталляцией нужно убедиться, что ваш компьютер отвечает требованиям к программному и аппаратному обеспечению. Чтобы
инсталлировать Borland С++ с дискет, сделайте следующее:
Вставьте диск 1 в дисковод A или B.
Запустите Windows и выберите в администраторе программ команду File Run.
Наберите a:\install или b:\install и нажмите Enter. Выводится диалоговое окно инсталляции. В нижней части этого окна вы увидите объем необходимого для полной установки
пространства на диске (Target Requirements), а также объем
доступного пространства на диске. Если используется компрессия диска, прочитайте файл INSTALL.TXT (возможно, вам
потребуется больше места).
Если вы хотите установить конкретные файлы, щелкните
"мышью" на кнопке Customize BC4.0 Installation. Выведется
другое диалоговое окно с описаниями и командными кнопками
для установки компонентов продукта. Щелкните "мышью" на
том компоненте, который хотите установить. Выводится дополнительное диалоговое окно, в котором вы можете отметить
файлы, не требующие установки. Щелкните на OK и повторите
этот процесс для всех необходимых компонентов. Щелчок
"мышью" на OK возвратит вас в первое окно установки.
Программа инсталляции перечисляет используемые по умолчанию каталоги, в которые она будет переписывать файлы. Если
вы хотите использовать другие каталоги, наберите другой
маршрут. Основным каталогом, в котором устанавливается
Borland С++, является C:\BC4, а рабочим - C:\BC4\BIN.
По умолчанию программа установки создает группу Windows, в
которую помещаются все пиктограммы Borland C++. Если вы не
хотите создавать группу, отмените Create Borland C++ Group.
По умолчанию инсталлируется также Win32s. Если это не требуется, отмените данный параметр. Win32s необходима для
работы 32-разрядных приложений.
Если вы инсталлируете продукт на машине с локальной сетью
LAN Windows, то выберите LAN Windows Configuration (в других случаях эту возможность выбирать не нужно).
Чтобы начать копирование файлов, щелкните "мышью" на кнопке Install. После завершения инсталляции прочитайте файл
README.TXT. Он описывает последние изменения в продукте,
перечисляет документацию и оперативные справочные файлы.
После установки убедитесь, что в CONFIG.SYS FILES и BUFFERS
установлены в значение 40 или больше. При установке в системные
файлы вашего компьютера вносятся следующие изменения:
AUTOEXEC.BAT включает в себя маршрут Borland С++ (по умолчанию C:\BC4\BIN).
В WIN.INI включается секция [BCW4.0 INSTALL], которая используется программой установки TASM для поиска установленного Borland С++. Кроме того, в секции [EXTENSION] расширение IDE связывается с BCW.EXE.
В SYSTEM.INI включаются две строки:
device = c:\bc4\bin\tddebug.386
device = c:\bc4\bin\windpmi.386
Если вы работаете под Windows NT, в файл CONFIG.NT добавляется NTCMDPROMPT.
Поставляемые с Borland С++ файлы перечислены в файле FILE-
LIST.TXT.
Как работает утилита MAKE
Утилита MAKE создает самую последнюю версию вашей программы,
выполняя при этом следующие задачи:
Считывает специальный файл (называемый файлом описания,
формирующим файлом или файлом сборки), который был предварительно вами создан. Этот файл указывает утилите MAKE,
какие объектные файлы и библиотечные файлы должны быть
скомпонованы для того, чтобы создать выполняемый файл, а
также указывает, какие исходные файлы и файлы заголовков
должны компилироваться для создания каждого объектного
файла.
Проверяет время и дату создания каждого объектного файла
по отношению к времени и дате создания исходного файла и
файлов заголовков, от которых он зависит. Если какой-либо
из этих файлов является более новым, чем объектный файл,
утилита MAKE считает, что он был модифицирован, и что необходимо произвести перекомпиляцию исходного файла.
Вызывает компилятор для перекомпиляции исходного файла.
После того, как были проверены все зависимости объектных
файлов, дата и время создания каждого объектного файла
проверяется по отношению к дате и времени создания выполняемого файла.
Если какой-либо из объектных файлов оказывается более новым по сравнению с выполняемым файлом, утилита вызывает
компоновщик для его перекомпоновки.
Утилита MAKE полностью полагается на дату и время, которые
DOS присваивает каждому файлу. Это означает, что для нормальной
работы утилиты MAKE необходимо корректно устанавливать системные
дату и время.
Ниже приводится синтаксис вызова команды MAKE:
MAKE [параметр...][результат...]
Здесь "параметр" является параметром утилиты MAKE (они описываются далее), а "результат" представляет собой имя результирующего файла, который должен быть создан.
Ниже описываются синтаксические правила вызова утилиты MAKE:
За словом make должен следовать пробел, а затем список параметров утилиты make.
Каждый параметр утилиты MAKE должен отделяться от соседних
параметров пробелом. Параметры могут располагаться в любой
последовательности; может быть введено произвольное число
этих параметров (ограничением является длина командной
строки). Все параметры, которые не задают строку (например, -s или -a) могут завершаться необязательным символом - или +. При помощи этих символов указывается выключение
(-) или включение (+) данного параметра.
За списком параметров утилиты MAKE следует пробел, а затем
необязательный список результирующих файлов.
Каждый результирующий файл также должен отделяться от соседних результирующих файлов пробелом. Утилита MAKE анализирует результирующие файлы в порядке их расположения, перекомпилируя по мере необходимости их компоненты.
Если в командной строке не содержатся имена результирующих
файлов, то утилита MAKE использует в качестве явно заданного результирующего файла имя первого обнаруженного результирующего
файла. Если в командной строке указан один или несколько результирующих файлов, то они будут создаваться по мере необходимости.
Каталог EXAMPLES
Каталог EXAMPLES\CLASSLIB\BIDS содержит несколько примеров
программ, использующих контейнерные классы:
STRNGMAX | Пример программы работы со строками. |
REVERSE | Промежуточные пример, использующий TStack (псевдоним TStackAsVector) и String. Этот пример позволяет пользователю вводить строки, а затем выводить их в обратном порядке. |
LOOKUP | Промежуточный пример, использующий TDictionary-AHashTable и TDDAssociation. |
QUEUETST | Промежуточный пример, использующий TQueue (псевдоним TQueueAsVector) и неирархический класс TTime. |
DIRECTRY | Продвинутый пример, иллюстрирующий производные пользовательские классы, использующие TISArrayAsVector и исходные файлы FILEDATA.CPP и TESTDIR.CPP. |
Для отладки контейнеров Borland предусматривает специальные библиотеки.
Каталог SOURCE
Каталог SOURCE\CLASSLIB содержит исходные файлы, реализующие
многие функции-элементы библиотечных классов. Эти исходные файлы
могут вам потребоваться при построении библиотеки.
Каталоги контейнеров
Библиотеки для классов контейнеров, построенных на базе шаблонов, отличаются по префиксу BIDS: это BIDSx.LIB, где x представляет модель памяти, и BIDSDBx.LIB для диагностических версий.
Поддержка классов контейнеров включает в себя каталоги, содержащие файлы заголовков, библиотеки, исходные файлы и примеры.
BIDSF.LIB | 32-битовая (плоская модель). |
BIDSDF.LIB | 32-битовая (плоская модель), диагн. версия. |
BIDS40F.DLL | 32-битовая DLL (плоская модель). |
BIDS40DF.DLL | 32-битовая DLL (плоская модель), диагностическая версия. |
BIDSFI.LIB | 32-битовая библиотека импорта (плоская модель). |
BIDSDFI.LIB | 32-битовая библиотека импорта (плоская модель), диагностическая версия. |
BIDSS.LIB | 16-битовая малая модель. |
BIDSDBS.LIB | 16-битовая малая модель, диагностическая версия. |
BIDSC.LIB | 16-битовая, компактная модель. |
BIDSDCC.LIB | 16-битовая, компактная модель, диагностическая версия. |
BIDSL.LIB | 16-битовая, большая модель. |
BIDSDBL.LIB | 16-битовая, большая модель, диагностическая версия. |
BIDS40.DLL | 16-битовая DLL. |
BIDS40D.DLL | 16-битовая DLL, диагностическая версия. |
BIDSI.LIB | 16-битовая библиотека импорта. |
BIDSI.LIB | 16-битовая библиотека импорта, диагностическая версия. |
Класс Application::TXInvalidMainWindow (applicat.h)
Вложенный класс TXInvalidMainWindow описывает исключительную
ситуацию, вызываемую недопустимым окном. Эта ситуация возникает
при нехватки памяти для создания окна или объекта диалога. InitInstance дает эту ситуацию при невозможности инициализировать
объект приложения.
Класс Bad_cast (typeinfo.h)
Если при приведении типа ссылки dynamic_cast завершается неуспешно, то выражение генерирует особую ситуацию Bad_cast (в случае указателя генерируется нулевой указатель).
Класс Bad_typeid (typeinfo.h)
Когда операнд typeid разыменовывается в нулевой указатель,
то операция typeid может генерировать Bad_typeid.
Класс bcd (bcd.h)
Конструкторы этого класса создают двоично-кодированные десятичные числа (BCD), от целых до чисел с плавающей точкой. С помощью описанной ниже функции real можно конвертировать числа bcd в long double.
После построения чисел bcd их можно использовать в выражения
совместно с другими типами и применять в стандартных математических функциях. Такие математические функции как abs, cos или sqrt для операций с bcd переопределяются. Переопределяются также операции +, -, *= , == и т.д. Числа bcd могут иметь точность до 17
разрядов и диапазон от 1*10^-125 до 1*10^125.
Класс BitmapGadget (bitmapga.h)
Этот производный из TGadget класс представляет собой простой
реквизит который может выводить одновременно массив растровых
изображений.
Класс BitSet (bitset.h)
BitSet устанавливает или сбрасывает бит или битовую группу.
Этот класс можно использовать для установки и очистки флагов параметров и получения информации о состоянии бит.
Класс Box3d
Ниже показано как можно произвести класс box3d из shape:
class box3d : public rect {
public:
double depth; // Добавлена глубина
// Конструктор для создания трехмерного прямоугольного объекта
box3d(double x, double y, double w, double h, double d);
double area(void); // Подмена area() в классе rect
double vol(void); // Дополнение функцией вычисления объема
};
Класс Circle
Ниже показано как нужно произвести класс circle из shape:
class circle : public shape {
public:
double radius; // Дополнительные данные: радиус круга
// конструктор circle
circle(double x, double y, double r);
double area(void); // Подменяет в классе shape функцию area()
};
Класс complex (comnplex.h)
Создает комплексные числа. Вы можете свободно использовать
эти числа в выражениях совместно с числами int, double и другими
числовыми типами, а также стандартными математическими функциями Си.
Класс complex переопределяет операции +, -, *, /, +=, -=,
*=, /=, == и !=. Для потокового ввода-вывода переопределяются
операции >> и <<.
Класс conbuf (constrea.h)
Специализирует streambuf для обработки консольного вывода.
Класс constream (constrea.h)
Обеспечивает потоки вывода на консоль. Этот класс является
производным от ostream и доступен только для приложений консольного режима.
Класс CreatedDC (dc.h)
Этот абстрактный класс TDC служит базовым классом для создаваемых или удаляемых объектов DC (контекст устройства). Он выполняет основную работу по созданию и удалению HDC с помощью CreateDC и DeleteDC.
Класс Cylinder
Ниже показано как можно произвести класс cylinder из circle:
class cylinder : public circle {
public:
double ht; // Дополнительные данные: высота цилиндра
// Конструктор для цилиндра
cylinder(double x, double y, double r, double h);
double area(void); // Подмена в классе circle функции area()
double vol(void); // Дополнительная функция вычисления объема
};
Класс filebuf (fstream.h)
Специализирует streambuf для ввода и вывода символов. Управляет выделением и удалением буфера, а также установкой позиции в
файле. Позволяет с помощью соответствующего конструктора или
функции-элемента использовать небуферизованный ввод-вывод. По
умолчанию файлы открываются в режиме openprot и допускают чтение
или запись. Этот класс обеспечивает только базовые средства для
ввода-вывода. Операции ввода-вывода выполняются с помощью функций
streambuf.
Класс фильтрации ввода
Простейший способ обеспечения включения в поле только допустимых данных состоит в обеспечении ввода пользователем только допустимых данных. Например, числовое поле ввода может быть ограничено вводом пользователем только цифровых данных.
Объект фильтра проверки допустимости ObjectWindows представляет общий механизм, ограничивающий вид символов, которые пользователь может вводить в данном управляющем элементе редактирования. TFilterValidator - это простой механизм проверки допустимости, проверяющий данные по мере ввода их пользователем. Его конструктор имеет только один параметр - набор допустимых символов.
TFilterValidator переопределяет IsValidInput таким образом,
чтобы она возвращала True, если все символы строки содержатся в
наборе допустимых символов. Редактируемый управляющий элемент
вставляет символы только в том случае, если IsValidInput возвращает True. Производные классы, такие как TRangeValidator, могут
комбинировать фильтрацию ввода с другими видами проверки допустимости строки.
Класс fpbase (objstm.h)
Обеспечивает базовые операции, общие для всех потоков ввода-вывода объектного файла.
Класс fstream (fstream.h)
Этот потоковый класс является производным от fstreambase и
iostream и выполняет с помощью filebuf одновременный ввод и вывод.
Класс fstreamable (fstream.h)
Этот производный от ios класс обеспечивает общие для файловых потоков операции. Он используется в качестве базового для
fstream, ifstream и ofstream.
Класс ifpstream (objstrm.h)
Обеспечивает базовый класс для чтения (извлечения) потоковых
объектов из потоков.
Класс ifstream (fstream.h)
Этот производный от fsreambase потоковый класс обеспечивает
операции ввода через filebuf.