每当需要ostream时使用ofstream

时间:2012-08-18 20:08:03

标签: c++ ofstream ostream

我正在使用一个库,它有一个功能:

static void printSingleExpr(std::ostream &os, const ref<Expr> &e);

但是,我想使用ofstream而不是std::ostream输出到文件,当我传递ofstream实例时(如预期的那样)我收到错误。有没有办法实现这个没有修改函数本身(或重载函数)?

1 个答案:

答案 0 :(得分:4)

你必须传递错误的东西。 std::ofstream继承自std::ostream,因此可用于代替std::ofstream f("x.bin"); printSingleExpr(f, x); 。换句话说,以下内容应该有效:

std::ofstream

确保{{1}}引用因某种原因不稳定或不稳定。