c++ - 控制外部库的输出

标签 c++ linux

在我的进程中,我有 LOG 宏,这些宏将文本输出到 std::cout 和文件。我的程序与第三方库链接,这些库将文本直接输出到 std::cout。我无法控制外部库中的代码,并且它们公开的 API 没有将输出重定向到文件的选项。有没有办法仍然可以控制输出并将其重定向到 std::cout 和文件?

最佳答案

我对共享库不是 100% 确定,但原则上这应该是一样的。只需将 stdout 和 stderr 重定向到新的流缓冲区即可。

关于c++ - 控制外部库的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49462524/

相关文章:

c++ - clang API 中的奇怪代码

linux - 对 "kernel process"的疑问

linux - Linux 中的 basename_r/dirname_r

c++ - 如何将应用程序与静态库链接+为什么这不起作用

C++ tellg() 返回类型

c++ - ITK: 在执行 HelloWorld Example 时找不到 ITKCommon-x.xx.dll

C++ 和 SDL2 网格移动太快

linux - 检测 shell 重定向命令是否用完磁盘空间?

linux - 将所有 bash 输出传输到脚本?

c++ - 在 switch 语句中使用结构