我想用這個段從Mr-Edd's iostreams article打印的std ::某處堵塞。重定向的std ::法院以定製寫入
#include <iostream>
#include <iomanip>
#include <string>
#include <sstream>
int main()
{
std::ostringstream oss;
// Make clog use the buffer from oss
std::streambuf *former_buff =
std::clog.rdbuf(oss.rdbuf());
std::clog << "This will appear in oss!" << std::flush;
std::cout << oss.str() << '\\n';
// Give clog back its previous buffer
std::clog.rdbuf(former_buff);
return 0;
}
所以,在一個主循環,我會做這樣的事情
while (! oss.eof())
{
//add to window text somewhere
}
這裏的ostringstream docs但我無法理解來做到這一點的最好辦法。我有一個顯示文本的方法,我只想用ostringstream中的任何數據調用它。
什麼是獲取發送到std ::東西堵塞重定向到我的選擇的方法最簡單/最好的方法是什麼?是如上述,並在同時填寫!EOF部分(不知道如何),或是否有更好的辦法,比方說通過重載一些地方「提交」操作者調用我的方法?我尋找熱塑成型的快速和容易的,我真的不想開始定義匯和用等輸入輸出流升壓的文章做 - 這東西是大大超過我的頭。
你可以在你的問題是什麼更清楚了嗎? – 2009-02-10 16:39:21