C++ 看来std::flush没有';t与std::cout一起工作

C++ 看来std::flush没有';t与std::cout一起工作,c++,netbeans-7,iostream,C++,Netbeans 7,Iostream,只是一个简单的测试: #include <iostream> int main(int , char** ) { for( size_t i = 0; i < 1000; i++ ) { std::cout << i << std::endl; } std::cout << std::flush; return 0; } 但我得到: ... 838 839 840 请告诉我我做错了什么? std::flus

只是一个简单的测试:

#include <iostream>

int main(int , char** ) 
{
  for( size_t i = 0; i < 1000; i++ )
  {
    std::cout << i << std::endl;
  }
  std::cout << std::flush;
  return 0;
}
但我得到:

...
838
839
840
请告诉我我做错了什么? std::flush是如何与std::cout一起工作的? 提前谢谢

PS

环境:Ubuntu Linux,g++4.8,从NetBeans 7.2推出
我不能直接从shell复制它。
可能是NetBeans错误吗?

?顺便说一句,当你插入
std::endl
时,无论如何都应该刷新流。这种刷新是完全冗余的,因为
std::endl
无论如何都会刷新。
这可能是一个NetBeans错误吗?
我倾向于相信“我不能直接从shell复制它。”所以它显然是被刷新的。
...
838
839
840