У меня было несколько вопросов по поводу потоков и прочее, но, немного подумав, я пришел к выводу, что все, что мне нужно, это пользовательский тип флеша. Я хочу, чтобы мой поток очистился, когда он получил новую строку. Это экономит на том, чтобы напечатать std :: endl. Можно ли это реализовать? Я использую ostream с пользовательским stringbuf.Пользовательский поток потокового типа
ответ
Я считаю, что все это заняло бы это переопределение ostream::put(char)
, но не цитируйте меня на этом:
template <typename Ch>
class autoflush_ostream : public basic_ostream<Ch> {
public:
typedef basic_ostream<Ch> Base;
autoflush_ostream& put(Ch c);
};
template <typename Ch>
autoflush_ostream<Ch>& autoflush_ostream<Ch>::put(Ch c) {
Base::put(c);
if (c == "\n") {
flush();
}
return *this;
}
Вы, возможно, придется переопределить каждый метод и функцию, которая принимает символ или последовательность символов, который определен в STL. Все они в основном будут делать одно и то же: вызовите метод/функцию, определенные в суперклассе, проверьте, была ли только что напечатана новая строка и если она была сброшена.
basic_ostream :: put не является виртуальным, поэтому версия производного класса не будет использоваться, если статический тип объекта не будет autoflush_ostream (т. Е. Объект, ссылка или указатель autoflush_ostream). В частности, это означает, что 'stream << '\ n'' не может называть ваш put. –
Научите меня выбирать программирование во сне. – outis
- 1. Поток потокового света - недостающие пакеты?
- 2. Пользовательский поток C++ для настраиваемого типа
- 3. поток потокового аудио потока для android
- 4. Поток потокового видео клиента сервера Gstreamer
- 5. AWS Lambda поток потокового клиента в Java
- 6. Пользовательский поток паролей Shibboleth
- 7. Пользовательский поток и TweetSharp
- 8. Пользовательский поток запущен в Application_Start
- 9. пользовательский поток в twitter api
- 10. WinRT, читаемый из бесконечного потокового потокового потока
- 11. Python: Создание потокового gzip'd-файла?
- 12. Поток потокового видео облака против потоковых запросов Разница в производительности
- 13. Как отбрасывать поток из потокового потока в C++?
- 14. Поток потокового громкоговорителя alsa pcm из приложения python
- 15. Поток потокового потока - подходит ли он нашему прецеденту?
- 16. Поток потокового файла из MVC 5 Контроллер в браузер
- 17. RTSP - единственный поток, работающий от моего потокового двигателя WOWZA
- 18. VLC HTTP потокового видео
- 19. Запись потокового ответа из потокового запроса в Koa с Mongoose
- 20. Запись в memcache из потокового конвейера потокового потока
- 21. Пользовательский дисплей типа сообщения
- 22. Разработка искру потокового приложения
- 23. Обмен сообщениями потокового сокета
- 24. микрофон Android потокового
- 25. Хостинг потокового сервера
- 26. Свечи потокового RDD перегородок
- 27. Объяснение слияния потокового потока
- 28. C++ пользовательский поток манипулятором, который изменяет следующий пункт на поток
- 29. потокового зкономит используя FlowPlayer
- 30. Как MUX RTP поток в зависимости от типа блока NAL
Простите меня, но зачем печатать 'endl' несколько раз труднее, чем писать новый поток из (почти) царапин? –
Это не так много, насколько это невозможно, и если да, то как. – Jookia