很久很久不写blog了,大三一年在编码方面实践了很多,也有不少的心得与体会。但是很久没有学习理论知识。现在工作也确定了,学习也轻松很多。所以决定踏实的继续学习技术理论并重实践。使自己尽快的融入到一种进步的状态中去。
今天学习了一点东西,其实是复习了。关于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;
}
很经典的东西了。
今天学习了一点东西,其实是复习了。关于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;
}
很经典的东西了。
本文介绍了C++中使用rdbuf进行流重定向的方法,并通过一个具体示例展示了如何将标准输出重定向到文件中,最后再恢复标准输出。
295

被折叠的 条评论
为什么被折叠?



