本日进修了一点对象,其实是温习了。关于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;
}
很经典的对象了。