ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В C++ (4-Е ИЗДАНИЕ) (часть 12) онлайн

Преимущества потоков

Программисты на C могут удивиться, какие же преимущества дает использование

потоковых классов для ввода/вывода вместо традиционных функций C printf(),

scanf(), для файлов — fprintf(), fscanf()...

Одним из аргументов в пользу потоков является простота использования.

Если вам приходилось когда-нибудь использовать символ управления форма-

том %d при форматировании вывода с помощью %f в printf(), вы оцените это.

Ничего подобного в потоках вы не встретите, ибо каждый объект сам знает, как

он должен выглядеть на экране. Это избавляет программиста от одного из ос-

новных источников ошибок.

Другой причиной является то, что можно перегружать стандартные операто-

ры и функции вставки (<<) и извлечения (>>) для работы с создаваемыми клас-

сами. Это позволяет работать с собственными классами как со стандартными

типами, что, опять же, делает программирование проще и избавляет от множе-

ства ошибок, не говоря уж об эстетическом удовлетворении.

Но неужели потоковый ввод/вывод так важен при работе в среде с графиче-

ским интерфейсом пользователя, такой, как, например, Windows, где непосред-

ственный вывод текста на экран не используется вообще? Неужели в наше вре-

мя еще нужны потоки C++? Оказывается, да, нужны. Потому что это лучший

способ записывать данные в файл, лучший способ организации данных в памя-

ти для последующего использования при вводе/выводе текста в окошках и дру-

гих элементах графического интерфейса пользователя (GUI).

 

4