КИТА unofficial
Апрель 29, 2024, 09:40:22 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
Новости:
 
   Начало   ПРАВИЛА Помощь WIKI PDA Войти Регистрация  


Страниц: [1]   Вниз
  Печать  
Автор Тема: Потоки и С++  (Прочитано 3750 раз)
Описание темы: Поговорим о потоках
0 Пользователей и 1 Гость смотрят эту тему.
Магнетон Бора
ЖИЗНЬ - БАЯН
Cтудент
*

Карма: +1/-0
Offline Offline

Пол: Мужской
Сообщений: 61



« : Сентябрь 27, 2008, 09:36:31 »

Какой-то умный человек реализовал в языке С++ возможность потокового ввода\вывода информации на экран и в файл. Но используя компилятор Borland C++ 3.1, я задался таким вопросом: как вводить и выводить информацию, используя потоки, когда работа осуществляется в графическом режиме, ведь если мне нужно вывести текст в нужной части экрана я не могу пользоваться функцией gotoxy, а информацию выводить надо. Один из советов был написать свой класс ввода\вывода, через потоки, но тут возникли некоторые сложности. Не мог ли кто-нибудь подробнее рассказать про работу ios, а так же streambuf. Или на худой конец поделиться опытом в реализации сей задачи. Заранее благодарен.  Улыбка
Записан
EvilMax
Администратор
Завкаф
*****

Карма: +59/-0
Offline Offline

Пол: Мужской
Сообщений: 1072


Злой и страшный :)


« Ответ #1 : Сентябрь 27, 2008, 11:05:57 »

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

Собственно, по классу. Нужно инкапсулировать информацию о текущей позиции, цвете, шрифте. По вызовам: вызовы функций позиционирования в графическом режиме, смены цвета, шрифта. Ну и переопределить операцию << . После чего сделать глобальный экземпляр потока - gout и пользоваться Улыбка (назвал по аналогии с cout, graphical output ).

Еще неплохая помощь - инклуды того же iostream. Можно подсмотреть, как реализовали умные дядьки из Borland. Так сказать, bestpractices.
Записан

Оптимальная концентрация кофе - это когда код уже дает советы, как его написать, но еще не спорит с тобой и не подкалывает в случае неудач...
---
Существует три способа распространения программного обеспечения: воровство, грабёж и обмен краденым. (c) Неизвестный программист
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

Penguins Counter Powered by MySQL Powered by PHP Powered by SMF 1.1.8 | SMF © 2006-2008, Simple Machines LLC Valid XHTML 1.0! Valid CSS! Internetmap
Страница сгенерирована за 0.067 секунд. Запросов: 27.