Кент Рейсдорф. BORLAND C++BUILDER. Раздел 1
Кент Рейсдорф. BORLAND C++BUILDER. Страница 90
Множественное наследование — очень полезный инструмент, который удобно иметь под рукой, хотя вам не обязательно использовать его часто.
Довольно скоро наступит время, когда вашим приложениям потребуется читать и записывать файлы. Я специально не касался этого раньше, потому что для понимания файлового ввода-вывода в Си++ необходимо знание классов.
Если вы собираетесь интенсивно работать с базами данных при помощи C++Builder, то вам не придется напрямую обращаться к их файлам. Для этого предназначены специальные компоненты VCL. VCL также обеспечивает поддержку чтения и записи для элементов редактирования, окон списков и других базовых элементов интерфейса Windows. API Windows предоставляет функции для чтения файлов конфигурации (.INI-файлов). Многие из элементов управления OCX и ActiveX «знают», как сохранять и загружать специальные файлы, необходимые им для выполнения своих функций.
Как видите, многие объекты, которые вы будете использовать в C++Builder, выполняют файловые операции за вас. Однако время от времени вам придется использовать свои собственные файлы, а для этого необходимо знание основ файлового ввода-вывода.
Базовый файловый ввод-вывод осуществляется в Си++ через три класса:
? Класс ofstream, обеспечивающий вывод в файл
? Класс ifstream, обеспечивающий ввод из файла
? Класс f str earn, обеспечивающий как ввод, так и вывод
Все эти классы являются производными от класса iostream. Вы уже имели опыт работы с iostream, хотя могли и не подозревать об этом. Классы cout и cin, использовавшиеся для консольного ввода-вывода, также являются производными от iostream. Сам iostream, в свою очередь, основан на классе ios, который является базовым для всего поточного ввода и вывода в Си++.