std::stringstream::flush() 应该做什么吗?

Is std::stringstream::flush() supposed to do anything?

本文关键字:什么 stringstream flush std      更新时间:2023-10-16
std::ostream

有一个flush()方法,它:

将未提交的更改写入基础输出序列。

这对std::stringstream意味着什么?如果我理解正确,这意味着这样的流没有什么可做的。这是真的吗?

flush()触发对流的rdbuf成员的pubsync()方法的调用(该方法又调用sync()(。对于字符串流,rdbuf是一个std::basic_stringbuf,正如链接所示,它的pubsync()/sync()行为是不执行任何操作。

因此,你的假设确实是有效的:std::stringstream::flush()什么都不做。