![](/img/trans.png)
[英]How to check when a std::vector changes state from empty to non-empty and the other way around?
[英]when can std::cout buffer be non-empty?
我在這里看到了cout.rdbuf()
。 這意味着,流cout
具有與之關聯的流緩沖區,在刷新它之前該緩沖區不為空。
但是,我怎么能在沖洗cout之前窺探cout的流緩沖區? 即
cout << "I want to read this before this get flushed";
cout.UnknownFunction(); //this would save the buffer into a string variable
cout << flush;
但是以當前代碼形式,所有內容都將在第一行之后刷新到屏幕上。
那么,什么樣的構造可以讓我窺視cout緩沖區?
PS。 我在Windows7上運行VC ++ 2010
我認為這不會在第一行之后刷新,但是我絕對不確定。 我經歷過endl
刷新,但其他人則沒有,可能會有太多的角色自動刷新,但我不知道。 我(偶然)創建了一個像這樣的程序(簡稱):
cout << "x";
while (true) {}
程序運行了這個程序,輸出將被調試,但是它沒有為我寫任何東西,所以我認為程序沒有到達那里...
以下鏈接與本主題密切相關C ++緩沖流IO
(但我仍然不確定如何/何時將cout.rdbuf()轉換為字符串。)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.