gpt4 book ai didi

c++ - 在 iostream 中缓冲

转载 作者:行者123 更新时间:2023-11-28 01:10:11 25 4
gpt4 key购买 nike

谁能解释一下,这到底是什么意思?我试图了解 clogcerr 之间的区别,区别仅在于缓冲提前致谢

最佳答案

当您写入 clog 时,您实际上是在写入字符的内存存储。当这个存储变满时,它就会写入实际的流。当流关闭时(这会在程序结束时发生),所有剩余数据都会写入流(也可能发生手动刷新)。

使用 cerr,这不会发生。

通常,由于写入内存比写入大多数流更快,缓冲的效果是性能的整体提升。情况并非总是如此(一个典型的例子是间接级别导致缓冲区写入缓冲区写入缓冲区),但这通常足以成为一个合理的默认值。但是,结果是在写入流对象和写入实际流之间可能存在延迟,这在某些情况下是不合适的。

可以合理想象,写入 cerr 的内容可能需要立即采取行动,但写入 clog 的内容则不需要,因此存在差异。

关于c++ - 在 iostream 中缓冲,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3830106/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com