网上有无数文章和答案解释了如何重定向标准输出,例如this或this。但是,我想复制/镜像写入stdout / stderr的内容而不完全重定向它。当我执行printf或std :: cout时,我希望它同时写入控制台和文件。这是一个插件;我无法控制进程何时或如何调用printf / std :: cout / etc.我只需要支持Windows。我想要像Boost的tee device之类的东西,但不知何故使用stdout。这可能吗?
编辑:我想知道关闭这个的人是否真的明白我在问什么,或者我是否遗漏了什么?我不想复制std :: cout流缓冲区,我想复制标准输出。这些答案中没有一个链接在"重复"问题链接可以拦截/复制对printf的调用。