在C++中,可以使用std::cout
結合std::ofstream
來將輸出內容同時輸出到標準輸出和文件中。
例如,可以這樣寫:
#include <iostream>
#include <fstream>
int main() {
std::ofstream file("output.txt");
std::streambuf *coutbuf = std::cout.rdbuf(); // save old buf
std::cout.rdbuf(file.rdbuf()); // redirect std::cout to output.txt
std::cout << "This will be output to both the console and the file." << std::endl;
std::cout.rdbuf(coutbuf); // restore old buf
std::cout << "This will only be output to the console." << std::endl;
file.close();
return 0;
}
在這個例子中,將std::cout
的緩沖區切換到file
對象的緩沖區,這樣輸出的內容將同時輸出到標準輸出和文件output.txt
中。最后,記得要將std::cout
的緩沖區切換回來,以確保之后的輸出只會輸出到標準輸出。