我正在尝试将一些方法移植到完全不同的硬件环境中的管道中,我没有很大的灵活性。我被迫使用Visual Studio 6和一个cygwin shell。
为了帮助调试设置,我想将“dump()”方法的输出重定向到文件,该方法打印到cout。我现在无法覆盖或扩展转储方法,因此我正在尝试旧技巧
#include<iostream>
#include<fstream>
std::ofstream out("out.txt");
std::cout.rdbuf(out.rdbuf());
在我的常规Eclipse环境中运行良好。但在这里我得到了
error C2660: 'rdbuf' : function does not take 1 parameters
我猜测1998年代的C ++可能没有允许这种覆盖?它是否正确?任何人都可以建议一个可行的选项吗?