我正在学习C++,我发现一些我无法理解的东西:
可以显式刷新输出缓冲区以强制缓冲区
书面。默认情况下,读取cin
脸红cout
; cout
也被冲得通红
当程序正常结束时。
因此,刷新缓冲区(例如输出缓冲区):是通过删除缓冲区中的所有内容来清除缓冲区,还是通过输出缓冲区中的所有内容来清除缓冲区?或者刷新缓冲区是否意味着完全不同的事情?
考虑写入文件。这是一项昂贵的操作。如果在代码中一次写入一个字节,那么每次写入一个字节的成本将非常高。因此,提高性能的常见方法是将正在写入的数据存储在临时缓冲区中。只有当有大量数据时才会将缓冲区写入文件。通过推迟写入并一次性写入一个大块,可以提高性能。
考虑到这一点,刷新缓冲区是将数据从缓冲区传输到文件的行为。
这是通过删除缓冲区中的所有内容来清除缓冲区,还是通过输出缓冲区中的所有内容来清除缓冲区?
后者。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)