Форум программистов, компьютерный форум CyberForum.ru

C++

Войти
Регистрация
Восстановить пароль
 
BESSON_off
 Аватар для BESSON_off
3 / 0 / 1
Регистрация: 08.07.2013
Сообщений: 338
#1

Зачем придумали istreambuf/ostreambuf? - C++

07.02.2014, 16:48. Просмотров 393. Ответов 7
Метки нет (Все метки)

Уважаемые форумчане, мне очень хочется понять для каких целей создали istreambuf_iterator и ostreambuf_iterator.
Все, что делает istreambuf_iterator - достает, посимвольно, элементы из буфера ввода.
Все, что делает ostreambuf_iterator - выводит, посимвольно, элементы.
Единственное применение для этого (которое я представляю себе) это копирование из одного файла в другой всех элементов.

Объясните пожалуйста - для чего же на самом деле нужны эти два итератора? (можно парочку полезных примеров для самостоятельной мозговой деятельности).
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.02.2014, 16:48     Зачем придумали istreambuf/ostreambuf?
Посмотрите здесь:

C++ зачем?
C++ Зачем ::
Зачем int ? C++
C++ Почему создатели языка C++ придумали такой странный синтаксис обращения к элементам одномерного массива?
return зачем он? C++
Зачем? C++
C++ Зачем false?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Dmitriy_M
1322 / 1203 / 109
Регистрация: 20.03.2009
Сообщений: 4,306
Записей в блоге: 11
07.02.2014, 18:38     Зачем придумали istreambuf/ostreambuf? #2
BESSON_off, научись пользоваться гуглом
http://www.cplusplus.com/reference/i...mbuf_iterator/
http://www.cplusplus.com/reference/i...mbuf_iterator/
BESSON_off
 Аватар для BESSON_off
3 / 0 / 1
Регистрация: 08.07.2013
Сообщений: 338
07.02.2014, 20:40  [ТС]     Зачем придумали istreambuf/ostreambuf? #3
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
научись пользоваться гуглом
Я иитераторы изучил перед тем как вопрос задать. И искал я не их определение а идею их эффективного использования. Не накидывай спама в тему, а дай пару нормальных примеров использования.
Dmitriy_M
1322 / 1203 / 109
Регистрация: 20.03.2009
Сообщений: 4,306
Записей в блоге: 11
07.02.2014, 21:08     Зачем придумали istreambuf/ostreambuf? #4
BESSON_off, там примеры приведены. К примеру для элегантного чтения.
BESSON_off
 Аватар для BESSON_off
3 / 0 / 1
Регистрация: 08.07.2013
Сообщений: 338
08.02.2014, 18:58  [ТС]     Зачем придумали istreambuf/ostreambuf? #5
Просто странно, есть же более солидные аналоги типа istream/ostream_iterator со своими производными, которые помимо того, что могут быть символьными (как istreambuf/ostreambuf) но и строковыми и т.п.
Dmitriy_M
1322 / 1203 / 109
Регистрация: 20.03.2009
Сообщений: 4,306
Записей в блоге: 11
08.02.2014, 22:35     Зачем придумали istreambuf/ostreambuf? #6
BESSON_off, да, но они не работают с буфером.
BESSON_off
 Аватар для BESSON_off
3 / 0 / 1
Регистрация: 08.07.2013
Сообщений: 338
19.02.2014, 19:39  [ТС]     Зачем придумали istreambuf/ostreambuf? #7
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
да, но они не работают с буфером
А для вас какая разница достаете ли вы символы через istream_iterator<char> или через istreambuf_iterator<char>. В обоих случаях вы получаете по символу каждую итерацию. В чем различаются получаемые символы?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.02.2014, 00:27     Зачем придумали istreambuf/ostreambuf?
Еще ссылки по теме:

Зачем учить С++? C++
Зачем нужно u--? C++
Зачем придумали WinAPI с таким гиперсложным нутром? C++ WinAPI
C++ Зачем вычитать '0'
C++ Builder Зачем?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Izual
 Аватар для Izual
93 / 118 / 6
Регистрация: 13.11.2012
Сообщений: 1,531
20.02.2014, 00:27     Зачем придумали istreambuf/ostreambuf? #8
Имхо конешно, но и fread обычной сишной функции читает.
Тебе наверно надо ключевую фразу "Разница istreambuf и чего то ещё".. хотя разницы врятли можно заметить, очень много функции С++ просто копируют Сишные, с маленькими добавочными алгоритмами, которые и самому написать можно...
Yandex
Объявления
20.02.2014, 00:27     Зачем придумали istreambuf/ostreambuf?
Ответ Создать тему
Опции темы

Текущее время: 03:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru