今天学习了一点东西,其实是复习了。关于rdbuf的使用。
C++中rdbuf重定向流的经典例子:
#include <iostream>
#include <fstream>
int main(void)
{
std::ifstream log("out.log");
std::streambuf* x = cout.rdbuf(log.rdbuf()); // 返回cout的流对象指针,使cout重定向到log文件中
std::cout << "Test\n"; // 写入到文件中
std::cout.rdbuf(x); // 恢复cout的流对象指针
std::cout << "Test2\n"; // 写入cout
return 0;
}
很经典的东西了。
时间: 2024-09-12 06:55:52