关于 std::flush 是怎么实现的
  • 板块学术版
  • 楼主蒟酱厂妹
  • 当前回复12
  • 已保存回复12
  • 发布时间2022/5/9 08:58
  • 上次更新2023/10/28 01:51:02
查看原帖
关于 std::flush 是怎么实现的
310818
蒟酱厂妹楼主2022/5/9 08:58

如题

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
//我的快读https://www.luogu.com.cn/paste/g22prtf4
signed main(){
//	freopen(".in","r",stdin);
//	freopen(".out","w",stdout);
	std::cout<<'\n'<<std::flush;
	(std::cout<<'\n').flush();
	(fio<<'\n').flush();
	return 0;
}

众所周知为了加速输出要使用缓冲区,然而我的 flush 函数必须这样子写,但是 std::flush 可以很自然的和 std::cout 结合起来,这是怎么实现的,直接点开发现看不懂QuQ

  template<typename _CharT, typename _Traits>
    inline basic_ostream<_CharT, _Traits>&
    flush(basic_ostream<_CharT, _Traits>& __os)
    { return __os.flush(); }

为什么这么短的东西就可以实现,求翻译

2022/5/9 08:58
加载中...