C++加速程序的全局执行函数

1 static int wing=[]()
2 {
3     std::ios::sync_with_stdio(false);
4     cin.tie(NULL);
5     return 0;
6 }();

C++的cin和cout在输入输出时,会先将内容写入缓冲区,再输入输出,导致时间效率低下。

这是因为默认情况下,为了混用cin/stdin,cout/stdout 时文件指针不出现混乱,cin和stdin保持同步,cout和stdout保持同步

这个导致cin和cout有了很多额外开销。

第2句可以用来取消这种同步,提高时间效率。

默认情况下,cin和cout绑定在一起,每次执行<<操作,都要调用flush函数,这样会增加IO负担,可以用tie(0)来解除cin和cout的绑定,进一步加快执行速度
原文链接: https://www.cnblogs.com/zhuangbijingdeboke/p/8832208.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/272338

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月14日 下午10:36
下一篇 2023年2月14日 下午10:37

相关推荐