【问题标题】:What Does filebuf::sync Do on an Input Buffer?filebuf::sync 在输入缓冲区上做什么?
【发布时间】:2015-07-31 12:36:44
【问题描述】:

我读到here,对于输入缓冲区,filebuf::sync 的:

效果 - 如果有的话 - 取决于库实现

那么我的问题是,谁能告诉我这些对 gcc 和 Visual Studio 的影响是什么?

【问题讨论】:

  • @Downvoter 我可以澄清一下投反对票的原因吗?
  • 我认为是因为问题不是很清楚...例如,您知道fflush是标准功能吗?
  • @black class basic_filebuf 甚至不是标准的,但它是微软在幕后实现的filebuf。 (顺便说一句,gcc 使用相同的命名方案。)
  • basic_filebuf 标准。
  • @black 哦,你说得太对了。

标签: c++ visual-studio gcc compiler-specific filebuf


【解决方案1】:

GCC 对 basic_filebuf 的内部实现只需 aligns its pbase() and pptr() 加上注释:

确保内部缓冲区将其文件位置概念与外部文件重新同步。

Visual Studio 的basic_filebuf 内部实现调用fflush(_Myfile),它没有在标头中实现。所以目前还不清楚该调用的作用。调用注释为:

将 C 流与外部文件同步

【讨论】:

  • basic_streambuf?你的意思是basic_ file buf?
  • @black 先生,再次正确。
猜你喜欢
  • 2012-12-24
  • 1970-01-01
  • 1970-01-01
  • 2021-11-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-02
  • 1970-01-01
相关资源
最近更新 更多