Программирование >>  Программирование на языке c++ 

1 ... 110 111 112 [ 113 ] 114 115 116 ... 159


Coviiha

Как и выше, здесь можно проверять состояния объекта, чтобы убедиться в правильности соответствующих операций. Используя такие проверки, можно, например, легко определить переполнение буфера, причем это будет сделано в самом объекте, так как он знает размер len буфера buf.

8.10. Заключение

Сформулируем основные выводы и правила работы с потоками ввода/вывода:

-♦ библиотека ввода/вывода языка С-и- поддерживает работу с абстрактными типами данных и базовые механизмы объектно-ориентированного программирования. Она является эффективной, гибкой и расширяемой;

-♦ ддя работы с потоками ввода/вывода в языке С++ используются переопределенные операторы для ввода и для вывода (см. § 8.1);

-♦ язык С-и- содержит собственные эффективные средства для модификации вывода данных на экран дисплея (см. класс conbuf в § 8.1);

♦переопределенные операторы ввода/вывода позволяют вводить и выводить данные любых встроенных в язык типов (см. §8.2, 8.3);

-♦ операторы ввода и вывода ( и ) можно повторно доопределить, что позволяет вводить и выводить данные новых типов (см. § 8.2, 8.3);

проверка правильности ввода/вывода может быть осуществлена с помощью специальных функций и переменных. В конечном счете, для этих целей необходимо проверить состояние потока (см. § 8.4);

-♦ результаты работы программы можно вывести на экран дисплея в заданной форме, т. е. в различных системах счисления, с различной точностью, с применением разных критериев выравнивания и т. п. Для этих целей используются функции форматирования, включенные в класс ios, и специальные операторы, называемые мани-



пуляторами (см. § 8.5 и 8.6). Манипуляторы можно задавать без аргументов и с аргументами, которые определяют некоторые значения для форматирования;

пользователь может сконструировать новые манипуляторы, что позволяет модифицировать и расширять операции форматирования (см. § 8.6);

работа с файлами и строками поддерживается специальными классами. При этом можно выполнять операции записи и чтения с произвольным доступом (см. § 8.8 и 8.9).



9. БИБЛИОТЕКИ КЛАССОВ

9.1. Общие сведения

о библиотеках классов

(на примере ObjectWindows)

В настоящее время создано большое число библиотек классов, которые существенно упрощают написание объектно-ориентированных программ. Рассмотрим их применение на примере библиотеки ObjectWindows фирмы Borland, которая включена в систему программирования Borland С++. Эта библиотека содержит классы, упрощающие создание различных графических компонентов экрана. Такими компонентами могут быть:

♦ прямоугольные окна с заголовком (windows) (рис. 9.1, а);

♦ диалоговые окна (dialog boxes) (рис. 9.1,6); -♦ средства управления (controls) (рис. 9.1, в); -♦ меню (рис. 9.1, г);

-♦ иконки, кнопки с картинками, битовые карты и другие графические объекты (рис. 9.1, д).

Библиотека содержит классы, функции которых вызывают системные функции WINDOWS. Каждый класс соответствует группе близких по назначению функций. Это позволяет классифицировать и систематизировать использование различных средств WINDOWS, доступных из прикладных программ (средств интерфейса пользователя с системой WINDOWS).

Для того чтобы вывести простейшее окно на экран дисплея, необходимо выполнить следующие два шага:

-♦ описать объект класса TApplication (этот класс включен в рассматриваемую библиотеку), например:



1 ... 110 111 112 [ 113 ] 114 115 116 ... 159

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика