Arm*_*yan 4 c++ iostream c++11
我可以查询一个ostream对象是否已被写入?对于一个ostringstream人可以使用
if(!myOssObject.str().empty())
Run Code Online (Sandbox Code Playgroud)
一般情况如何,例如a ofstream或coutor cerr?
总的来说没有
您可以通过以下方式找出在刷新(发送缓冲数据)之前写入多少个char(或其他内容)tellp():
返回当前关联的streambuf对象的输出位置指示符.
cout << "123";
if (cout.tellp() > 0)
{
// There is some data written
}
Run Code Online (Sandbox Code Playgroud)
刷新后,这些输出流将忘记它们写的内容但是最后的状态标志.
如果输出设备是实时的并且没有缓冲任何东西,tellp则无济于事.
| 归档时间: |
|
| 查看次数: |
1592 次 |
| 最近记录: |