Просто идея, но вы можете передавать в файл потоки cout
и cerr
.
#include <fstream>
#include <iostream>
int main(int argc, char *argv[]) {
std::ofstream file;
file.open("output.txt");
std::streambuf *std_buffer = std::cout.rdbuf();
std::cout.rdbuf(file.rdbuf());
std::cout << "this is a log" << std::endl;
return 0;
}